检索网址

时间:2018-02-01 03:52:17

标签: java spring spring-mvc tomcat

我有一个URL,形成如下: http://localhost:8080/app/angular/users/#/update/745

当我尝试使用request.getRequestURL()获取网址时,我会获得直到http://localhost:8080/app/angular/users的网址。我尝试了HTTPServletRequest的不同方法,但都没有效果。

有人可以帮忙吗?我需要了解如何获得完整的URL,以及#。

的内容

2 个答案:

答案 0 :(得分:0)

#是片段标识符。您无法获取数据,它不会被发送到服务器。

How to get full URL which contains # from HttpServletRequest

要解决此问题,请不要使用#作为传递参数的方法。坚持使用请求参数,例如http://localhost:8080/app/angular/users/update?id=745,并在Controller上的GET方法中读取Spring,或者将其用作路径变量,例如http://localhost:8080/app/angular/users/update/745,也可以从Spring控制器中检索。

答案 1 :(得分:0)

getPathInfo()在URI之后提供额外的路径信息,用于访问您的Servlet,其中getRequestURI()提供完整的URI。

我认为它们会有所不同,因为Servlet必须首先配置自己的URI模式;我不认为我曾经从根(/)。

服务过Servlet

例如,如果Servlet' Foo'被映射到URI' / foo'然后我会想到URI:

/富/路径/到/资源 会导致:

RequestURI = / foo / path / to / resource 和

PathInfo = / path / to / resource