在Struts2中获取准确的URL

时间:2012-12-20 07:57:38

标签: url struts2

我想获取Struts2 Web应用程序访问的URL。例如,如果用户访问http://www.webpage.comhttps://www.webpage.com,我需要协议; http或https。我尝试使用ServletRequestAware并使用request.isSecure()或request.getScheme()来实现该操作。但是,即使我访问“https:// ..”链接,我也会收到错误和“http”。

有没有办法获得协议?

2 个答案:

答案 0 :(得分:0)

您可以从标题中提取它:

System.out.println(request.getHeader("referer"));
  

输出:

     

https://www.webpage.com

答案 1 :(得分:0)

我想你忘了再试一次。 使用ServletRequestAware实现Action并使用

request.getProtocol();

否则,您可以在操作类中使用以下代码:

HttpServletRequest request=ServletActionContext.getRequest();
    String protocol=request.getProtocol();
    System.out.println("Protocol Used::"+protocol);