我陷入了cookie清理问题。 我们使用域名创建了cookie值:.www.parent.com 之后我们更改了代码库以在域中创建cookie值:.parent.com 这给了我们来自两个域的cookie值并弄乱了我们的代码。有没有办法通过java代码从.www.parent.com删除cookie?
我已经尝试过这样做了:
Cookie cookie = new Cookie("oldCookie" , null);
cookie.setMaxAge(0); or cookie.setMaxAge(-1);
cookie.setPath("/");
response.addCookie(cookie);
答案 0 :(得分:0)
您可能希望获取客户端存储的所有Cookie并使用request.getCookies()
检查它们,并返回Cookie数组。
通过这种方式,您需要检查任何人的所需域名并将其TTL设置为:
Cookie[] c=request.getCookies();
for(int i=0;i<c.length;i++){
if(c[i].getDomain().equals(".www.parent.com")){
c[i].setMaxAge(0);
response.addCookie(c[i]);
}
}
这样,您传递给response
的Cookie应具有完全相同的名称,路径和除maxAge
值为0之外的任何其他属性。