在Servlet中获取HTTP和HTTPS请求的完整URL和查询字符串

8 浏览
0 Comments

在Servlet中获取HTTP和HTTPS请求的完整URL和查询字符串

我正在编写一个代码,其任务是获取请求的URL或完整路径。我已经编写了以下代码:

HttpServletRequest request;//从其他函数获得
String uri = request.getRequestURI();
if (request.getQueryString() != null)
    uri += "?" + request.getQueryString();

所以,当我浏览http://google.com?q=abc时,一切正常。

但是当我浏览https://google.com时,就会出现问题。变量uri的值是http://google.com:443google.com:443,所以程序仅在使用HTTPS时出现问题。

并且request.getRequestURL().toString()的输出结果也是相同的。

有什么解决办法吗?

0