1. ホーム
  2. java

[解決済み] JavaサーブレットでCookieを削除する方法

2022-05-15 19:53:28

質問

Javaサーブレットでクッキーを削除する方法は?

私はこれを試しました。 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);

どのように解決するのですか?

MaxAgeが-1であることは、セッションの間、クッキーを持続させたいことを意味します。代わりにMaxAgeを0に設定したい。

から API ドキュメント :

負の値は、クッキーが永続的に保存されず、ウェブブラウザが終了したときに削除されることを意味します。ゼロの値を指定すると、Cookieは削除されます。