如何在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 yetresponse.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 yetresponse.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);
3 回答

30秒到达战场
TA贡献1828条经验 获得超6个赞
在我的环境中,以下代码有效。虽然乍看上去多余的,cookies[i].setValue("");并且cookies[i].setPath("/");是必要的,正确清除该cookie。
private void eraseCookie(HttpServletRequest req, HttpServletResponse resp) {
Cookie[] cookies = req.getCookies();
if (cookies != null)
for (Cookie cookie : cookies) {
cookie.setValue("");
cookie.setPath("/");
cookie.setMaxAge(0);
resp.addCookie(cookie);
}
}
添加回答
举报
0/150
提交
取消