首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >发送重定向响应不起作用时使cookie过期

发送重定向响应不起作用时使cookie过期
EN

Stack Overflow用户
提问于 2011-12-08 03:56:56
回答 3查看 1.7K关注 0票数 2

我正在尝试使来自安全访问的servlet的不安全cookie失效/过期,并将重定向发送回客户端。但是,当跟随重定向时,请求仍然包含原始的、未过期的、未失效的cookie (这是一个单词)。

以下是该流程的更详细描述:

1)客户端请求由Servlet A支持的特定的不安全url。

2) Servlet A检测到存在Cookie XX,并重定向到Servlet B支持的安全url

3) Servlet B施展它的魔力,然后通过将MaxAge设置为0来使Cookie XX无效,并通过不安全的url重定向到Servlet A。

4)在Servlet A中,我仍然能够访问cookie,就像它在第一个请求中一样。

有人能帮上忙吗?我的印象是,没有找到相反的证据,即当cookie与重定向响应一起返回时,它仍然在新请求发出之前进行处理。这在我能访问的所有浏览器(Chrome,FF,IE)中都会发生,所以我不认为这是浏览器的问题。在HTTPFox和Chrome开发工具中,我可以看到在第一个和第二个请求中发送原始cookie,在对第二个请求的响应中返回无效的cookie,在第三个请求中再次发送原始cookie。我尝试将MaxAge设置为0,将cookie的值设置为空/空字符串,以及另一个值,但它永远不会改变。如果重要的话,所有服务器端代码都是用Java完成的。

非常感谢您的帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-06-15 00:39:37

这被证明是我的疏忽。当Servlet B使Cookie XX无效时,它还会将cookie的路径设置为与最初不同的路径。这实际上创建了一个Cookie XX-B,并且对原始Cookie XX没有任何影响。确保我的cookie的路径是相同的修复它。

票数 1
EN

Stack Overflow用户

发布于 2011-12-09 02:38:00

您是否尝试过确保失效cookie的域和路径与原始cookie相同?

此外,处理敏感cookie的更好方法是在原始cookie上设置“安全”标志。这将告诉浏览器永远不要通过不安全的连接发送cookie。

票数 1
EN

Stack Overflow用户

发布于 2018-10-28 13:44:53

在两个不同的项目中,我不得不使cookie无效。这是我不得不做的:

从HTTP request对象中获取有问题的cookie,并通过调用Cookie.setMaxAge(int).

  • Call

  • Cookie.setPath(String)方法将cookie的最大寿命设置为,即使path要将cookie保留到HTTP response对象中,也要将cookie返回到HTTP response对象中,即HttpServletRespons.addCookie(cookie)

( same

  • Add )。

只有在执行完上述所有步骤后,浏览器才会在后续请求时停止将cookie传递回服务器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8421673

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档