现在的位置: 首页 > 综合 > 正文

拼装网页的相对路径

2018年01月11日 ⁄ 综合 ⁄ 共 730字 ⁄ 字号 评论关闭

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

这个语句是用来拼装当前网页的相对路径的。 


<base href="...">是用来表明当前页面的相对路径所使用的根路径的。 

比如,页面内部有一个连接,完整的路径应该是 http://localhost:80/myblog/authen/login.do 

其中http://server/是服务器的基本路径,myblog是当前应用程序的名字,那么,我的根路径应该是那么http://localhost:80/myblog/。 


有了这个 <base ... >以后,我的页面内容的连接,我不想写全路径,我只要写 authen/login.do就可以了。服务器会自动把 <base ...>指定的路径和页面内的相对路径拼装起来,组成完整路径。 

如果没有这个 <base...>,那么我页面的连链接就必须写全路径,否则服务器会找不到。 


request.getSchema()可以返回当前页面使用的协议,就是上面例子中的“http” 

request.getServerName()可以返回当前页面所在的服务器的名字,就是上面例子中的“localhost" 

request.getServerPort()可以返回当前页面所在的服务器使用的端口,就是80, 

request.getContextPath()可以返回当前页面所在的应用的名字,就是上面例子中的myblog 

这四个拼装起来,就是当前应用的跟路径了

抱歉!评论已关闭.