我正在尝试在过滤器中获取整个网址,但它在 # 之后没有给我
浏览器网址 :
/en_US/web/guest/regulatory/disclosures#esma_endorsement
以下是在我的过滤器中获取 url 的代码:
String reqUrl = httpReq.getRequestURL().toString();
它总是给出:
/en_US/web/guest/regulatory/disclosures
我也尝试过使用查询字符串,但没有运气。
我想获取网址和 #symbol
谁能帮我?
谢谢纳雷什。
这就是它的工作原理。#
部分由浏览器解释客户端。没有必要让服务器知道这部分。如果你肯定想要它,你可以在浏览器上使用javascript访问它,并使用参数将其显式发送到服务器。但是,如果您不显式处理它,它就不会成为 URL 的一部分。当它到来时,它不会被#
分开
您希望接收的部分实际上不属于 URI。称为"片段标识符"的哈希字符,它不会发送到服务器。该部分用于浏览器上的一些额外操作。
所以基本上你不能在服务器端检索那部分。但是您可以做一些技巧,例如在前端检索相关部分并作为URL的一部分发送回服务器,例如:
/en_US/web/guest/regulatory/disclosures?name=esma_endorsement