この記事では、Java で Servlet Cookie が値を取得できない理由の解決策に関する関連情報を主に紹介します。必要な方は、
Java の Servlet Cookie が値を取得できない理由の解決策を参照してください。値
現象: Cookie を使用した HTTP リクエストをテストすると、サーバーは request.getHead
er("cookie") を使用して値を取得できるが、request.getCookies() を使用して値を取得できないことがわかりました。Cookie mycookies[] = request.getCookies();
原因:
ブラウザの特定の Cookie 値を確認したところ、
http://localhost:8080/
アクセスすると、Cookie の値が localhost の下に配置され、サーバーによって自動的に生成された SESSIONID も localhost パスの下に保存されます。
http://127.0.0.1:8080/
そのため、サーバーが Cookie を送信するとき、
String host=request.getHeader("host");
if(host.indexOf(":")>-1){ host=host.split(":")[0]; }
mycookie.setDomain(host);
もちろん、それはサーバーです。すでにドメイン名を持っている場合は、ポート番号で Cookie 値を取得できないという問題はありません。
解決策:
String cookie=request.getHeader("cookie"); Cookie mycookies[] = request.getCookies();
以上がJavaでServlet Cookieが値を取得できない問題の解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。