如何在Servlet转发的JSP中获取请求URL?
如果我在JSP中运行以下代码,
System.out.println("servlet path= " + request.getServletPath()); System.out.println("request URL= " + request.getRequestURL()); System.out.println("request URI= " + request.getRequestURI());
然后我获得了JSP的服务器端路径。但是我想获取该URL,就像您在浏览器的地址栏中看到的那样。我可以在转发到JSP的Servlet中获得它,但是我想在JSP中获得它。
如果用于RequestDispatcher.forward()将请求从控制器路由到视图,则请求URI作为名为的请求属性公开javax.servlet.forward.request_uri。因此,您可以使用
RequestDispatcher.forward()
javax.servlet.forward.request_uri
request.getAttribute("javax.servlet.forward.request_uri")
要么
${requestScope['javax.servlet.forward.request_uri']}