java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > request获取完整url(包括域名、端口、参数)

request如何获取完整url(包括域名、端口、参数)

作者:shuaipu813

这篇文章主要介绍了request如何获取完整url(包括域名、端口、参数)问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

request获取完整url(包括域名、端口、参数)

在servlet请求中,使用request获取整个请求url:

String url="http://" + request.getServerName() //服务器地址  
        + ":"   
        + request.getServerPort()           //端口号  
        + request.getRequestURI();  

然后判断有没有参数:

String queryurl=httprequest.getQueryString();
	if(null!=queryurl){
		url+="?"+queryurl;
	}

这样获取到的就是整个请求的url

常见Request获取URL的方法

1、request.getRequestURL()

返回的是完整的url,包括Http协议,端口号,servlet名字和映射路径,但它不包含请求参数。

2、request.getRequestURI()

得到的是request URL的部分值,并且web容器没有decode过的

3、request.getContextPath() 

返回 the context of the request.

4、request.getServletPath() 

返回调用servlet的部分url.

5、request.getQueryString() 

返回url路径后面的查询字符串

示例:

当前url:http://localhost:8080/CarsiLogCenter_new/idpstat.jsp?action=idp.sptopn

request.getRequestURL()   http://localhost:8080/CarsiLogCenter_new/idpstat.jsp
request.getRequestURI()  /CarsiLogCenter_new/idpstat.jsp
request.getContextPath()  /CarsiLogCenter_new
request.getServletPath()  /idpstat.jsp

request.getQueryString()  action=idp.sptopn

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文