如何删除 Java servlet 中的 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 过期。
负值意味着 cookie 不会持久存储,并且会在 Web 浏览器退出时被删除。零值会导致 cookie 被删除。
使 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);
原文由 Dougnukem 发布,翻译遵循 CC BY-SA 4.0 许可协议
MaxAge 为 -1 表示您希望 cookie 在会话期间持续存在。您想要将 MaxAge 设置为 0。
来自 API 文档: