-1

私は次のようなURLを持っています

www.abc.com/;jsessionid=53AA662D24A89922031913A6E85A005B

(申し訳ありませんが、ここで実際のサイト名を指定することはできません。使用してくださいabc.com)

上記の URL がヒットしたら;jsessionid=53AA662D24A89922031913A6E85A005B、バックエンド (サーブレット内) で上記の URL を削除し、実際の URL (この例では) にリダイレクトします http://www.abc.com/

要求された URL に 'jsessionid' があるかどうかを知るためにサーブレットでさまざまな方法を試しましたが、HTTP 要求オブジェクトで要求された完全な URL を返すメソッドが見つかりません。

HTTPリクエストオブジェクトで次のメソッドを試しました

  • getRequestURI()
  • getRequestURL()
  • getContextPath()
  • getPathInfo()

しかし、要求された完全な URL をjsessionid.

試してみましgetParameter()たが、上記の URL には前にgetParameterNames()なかったので、助けにはなりません。?jsessionid

4

2 に答える 2

8

サーブレットで上記の完全な URL を取得する方法は次のとおりです。

 public void doGet(HttpServletRequest request, HttpServletResponse response)
                       throws IOException, ServletException {

               String url = request.getRequestURL().toString();
              System.out.println(url);
               }
于 2013-06-12T14:51:56.893 に答える
2
public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException {

    String jSessionId=request.getParameter("jsessionid");

    System.out.println("jSessionId:"+jSessionId);    
}
于 2014-02-26T05:44:18.237 に答える