0

有什么方法可以从 java 代码中获取应用程序的 url 地址,我的意思是完整的地址不仅来自 getContextPath() 的值。类似http://localhost:8080/etc

4

3 回答 3

0

尝试使用getRequestUrl()

希望对你有帮助

于 2010-02-22T20:21:31.443 回答
0

在 servlet 或 JSP 中,您可以调用javax.servlet.http.HttpUtils.getRequestURL(request)

它返回一个 StringBuffer,其中包含直到 servlet 的整个 URL

来自 javadoc

使用 HttpServletRequest 对象中的信息重构客户端用于发出请求的 URL。返回的 URL 包含协议、服务器名称、端口号和服务器路径,但不包含查询字符串参数。

如果您只想要上下文路径,则必须删除您的 servlet 路径

于 2010-02-22T20:22:13.470 回答
0

没有任何方法可以返回包括查询参数在内的整个 URL。你需要使用类似的东西:

req.getRequestURL()+"?"+req.getQueryString();

或者,如果您没有查询参数,您可以使用getRequestURL

这很令人困惑,但这里有一张图表可以帮助解决这个问题:

不同方法的关系

于 2018-05-12T22:09:22.850 回答