3

我想知道如何获取 HTTP 请求的完整路径。

如果有一个请求,http://localhost:8080/path1/path2我怎样才能得到完整的/path1/path2

Usingrequest.getContextPath()仅返回 /path1 部分。

4

3 回答 3

3

您需要使用以下getRequestURI()方法

该文档是这样描述的:

返回此请求的 URL 从协议名称到 HTTP 请求第一行中的查询字符串的部分。

于 2013-04-04T08:31:17.240 回答
2

您可以使用以下。

request.getRequestURI()

你得到

/路径1/路径2

作为结果。你明白我的意思了吗?或任何查询?

于 2013-04-04T08:35:04.240 回答
0

也许您可以从请求中提取 HOST 标头,如下例所示:

http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/Servlet-Tutorial-Request-Headers.html

然后,您可以将它与您的上下文路径连接起来。我唯一不确定的是它是否包含 https:// 以防它通过 SSL 运行,但如果你总是使用相同的协议,应该有办法找出或知道它......

问候

于 2013-04-04T08:37:26.607 回答