从另一个站点重定向到该站点时,是否可以删除一个站点上的cookie?或者由于安全限制这是不可能的?
站点A有一个提交到站点B并以站点B登录的登录表单。当用户在使用站点A的登录表单后从站点B注销时,站点B将它们转发回站点A.对于站点A有什么办法吗?删除站点B上的cookie而无法访问站点B的后端/代码?
答案 0 :(得分:1)
AFAIK这是不允许的 - 正如您所猜测的那样 - 安全原因。
请点击此处了解更多详情:http://en.wikipedia.org/wiki/Same_origin_policy
答案 1 :(得分:1)
不,如果站点A和站点B位于不同的域上,则不会。可以在domain attribute
标头中设置Set-Cookie
,但这必须是当前域的精确匹配或部分匹配。通过部分匹配,我的意思是foo.example.com
可以为example.com
设置Cookie,但不能为ample.com
设置Cookie。
来源RFC 6265(HTTP状态管理机制):
当用户代理从请求中“接收cookie”时...
如果规范化的请求主机没有域匹配 域的属性:
完全忽略Cookie
请记住,cookie删除实际上正在接收带有过期日期的cookie ,这就是上述原因仍适用的原因。
站点B必须实现一种允许这种情况发生的机制。