request.getQueryString()不返回查询字符串的哈希部分

时间:2010-05-27 18:04:15

标签: jsp servlets query-string

我使用的是Java EE而request.getQueryString()没有返回#hash部分

my/page?id=4#hash

我正在使用Struts 2.

有没有解决方案?

2 个答案:

答案 0 :(得分:3)

不是真的。在许多情况下,客户端的浏览器不会将哈希标记发送到服务器。

例如,请求此网址:

http://stackoverflow.com/questions/2923610/java-getquerystring/2923618#2923618

将带有这些标头的请求发送到服务器:

GET /questions/2923610/java-getquerystring/2923618 HTTP/1.1
Host: stackoverflow.com

答案 1 :(得分:3)

url的哈希部分(原则上)仅对客户端有用,因此通常浏览器不会将该部分发送到服务器。你确定你有兴趣阅读它,在服务器端?通常,你不应该。

如有特殊需求,请点击此处 How to get Url Hash (#) from server side