我有以下代码试图从我的浏览器中删除一些 JSESSIONID cookie。
String[] cookieList = "/App1/,/App2/,/App3/".split(",");
for (int i = 0; i < cookieList.length; i++) {
String cookiePathString = cookieList[i];
response.setContentType("text/html");
Cookie cookieToKill = new Cookie("JSESSIONID", "No Data");
cookieToKill.setDomain(getCookieDomainName("myDomain.com"));
cookieToKill.setMaxAge(0);
cookieToKill.setPath(cookiePathString);
cookieToKill.setComment("EXPIRING COOKIE at " + System.currentTimeMillis());
response.addCookie(cookieToKill);
}
该代码在 Firefox 中运行良好,并删除了 JSESSIONID。在 Chrome 和 IE 中它没有。您需要做什么才能使 IE 和 Chrome 中的这些会话 cookie 过期?
这是在运行 Java 7 的 Tomcat 上的 Spring MVC 应用程序中运行的