私の HttpServletRequest.getCookies() が Cookie 値全体を返していません。Cookie 値は別のキーと値のペアであるため、おそらく解析が台無しになっています。これを回避する方法を知る必要があります。
というわけで背景はこちら。Cookie にユーザー名とパスワードを設定して認証を行う新しい apache2.4 mod_auth_form を使用しています。Cookie は次のようになります: "session=private-user=myUser&private-pw=myPass"
特定の REST 呼び出しが tomcat サービスに渡されるように、Apache にプロキシを設定しました。Tomcat サービスでは、Jersey REST クラスがそれらを待機しています。
ブラウザで Cookie を確認できます。php で完全な Cookie も確認できます。ただし、私の Java クラスでは、HttpServletRequest に「セッション」Cookie がありますが、値は単に「private-user=myUser&private-pw=myPass」ではなく「private-user」です。
私の推測では、キーと値のペアに = 記号と & 記号を使用すると、解析がうまくいかない可能性があります。完全な未加工の Cookie 値を取得するにはどうすればよいですか?
重要な場合、これが私のJavaコードです。
private String getAuthenticatedUser(HttpServletRequest httpRequest) {
String user = null;
Cookie[] cookies = httpRequest.getCookies();
for(Cookie cookie : cookies) {
System.out.println(cookie.getValue());
}
}
ありがとう