Cookie清理无法使用java代码,我正在尝试从父域

时间:2017-09-05 09:03:36

标签: java jsp cookies

我陷入了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);

1 个答案:

答案 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之外的任何其他属性。