在java中编辑现有cookie

时间:2016-10-27 06:42:44

标签: java cookies

我正在尝试编辑现有cookie的值,但是徒劳无功。我甚至尝试删除冷cookie并创建一个具有新价值的新cookie,但即使这样也没有用。用于编辑Cookie的代码段:

Cookie modifyCookie= new Cookie(cookie.getName(), newValue)
modifyCookie.setMaxAge(30000)
modifyCookie.setPath("/")
response.addCookie(modifyCookie)

删除并创建一个新的: //删除旧的

Cookie oldCookie = new Cookie(cookie.getName(), null)
oldCookie.setMaxAge(0);
oldCookie.setPath("/")
response.addCookie(oldCookie);

//创建一个新的

Cookie newCookie = new Cookie(newCookieName, newValue
newCookie.setMaxAge(30000)
newCookie.setPath("/")
response.addCookie(newCookie)

既不会改变现有的cookie,也不会删除旧的cookie,而是创建新的

你能告诉我缺少什么吗?

1 个答案:

答案 0 :(得分:0)

@rukavitsya 感谢您的意见。问题解决了。

问题是我在发送响应后向响应中添加了cookie。因此,cookie未在后续请求中反映出来。 我用以下方式编辑了现有的cookie:

Cookie oldCookie = new Cookie(cookie.getName(), newValue)
oldCookie.setMaxAge(30000);
oldCookie.setPath("/")
oldCookie.setDomain("domain.com")
response.addCookie(oldCookie);

当我在发送回复之前编辑cookie时,事情按预期工作。