Java サーブレットで Cookie を削除するにはどうすればよいですか?
私はこれを試しました:http://www.jguru.com/faq/view.jsp?EID=42225
編集: 以下は、次の組み合わせで正常に動作するようです:
response.setContentType("text/html");
そして
cookie.setMaxAge(0);
以前は次のことをやっていました:
//remove single signon cookie if it hasn't been validated yet
response.setContentType("text/html");
Cookie cookie = new Cookie(SSORealm.SSO_COOKIE_NAME, "");
cookie.setDomain(SSORealm.SSO_DOMAIN);
cookie.setMaxAge(-1);
cookie.setPath("/");
cookie.setComment("EXPIRING COOKIE at " + System.currentTimeMillis());
response.addCookie(cookie);
ブラウザが閉じられるとクッキーは期限切れになります。ドキュメント。
負の値は、Cookie が永続的に保存されず、Web ブラウザの終了時に削除されることを意味します。値がゼロの場合、Cookie は削除されます。
クッキーを期限切れにする完全なスニペットは次のとおりです。
//remove single signon cookie if it hasn't been validated yet
response.setContentType("text/html");
Cookie cookie = new Cookie(SSORealm.SSO_COOKIE_NAME, "");
cookie.setDomain(SSORealm.SSO_DOMAIN);
cookie.setMaxAge(0);
cookie.setPath("/");
cookie.setComment("EXPIRING COOKIE at " + System.currentTimeMillis());
response.addCookie(cookie);
ベストアンサー1
MaxAge が -1 の場合、セッションの期間中は Cookie が保持されることを意味します。代わりに、MaxAge を 0 に設定する必要があります。
からAPIドキュメント:
負の値は、Cookie が永続的に保存されず、Web ブラウザの終了時に削除されることを意味します。値がゼロの場合、Cookie は削除されます。