javascript - *真的*用javascript删除cookies

标签 javascript cookies

在javascript中删除cookies的方法是将过期日期设置为过去。现在这实际上并没有删除 cookie,至少在 Firefox 中是这样。这只是意味着 cookie 将在浏览器关闭时被删除。

这对我们来说是一个问题:我们有一个产品涉及从潜在的许多网站归档网页,所有这些内容都存储在我们的服务器上。为了确保页面正确呈现,我们还包括所有 js。然而,cookies通常是由js设置的,鉴于页面缓存在我们的服务器上,这些cookies设置在我们的域下。

因此,随着时间的推移,来自数十个存档站点的 cookie 会在我们的域下建立起来。最终 Cookie header 超过最大内容长度,导致 HTTP 400 错误代码。

而且由于我们的客户大多在公司环境中,他们从不重启机器或关闭浏览器:他们可以保持打开状态数月之久。所以这种“软”删除不起作用,至少不可靠。

有什么方法可以在 javscript 中物理删除 session 内的 cookies 吗?或者,是否有任何方法可以阻止设置它们?

最佳答案

这是不可能的。时期。我已经为此苦苦挣扎了几个星期,但仍未找到解决方案。

谁发明了 cookie getter/setter 应该是 %insert_painful_punishment_here%。

尤其是 Internet Exploder 在删除 cookie 方面堪称猛兽。我不记得确切的问题,但我认为它涉及 https 和包含 ; 的 cookie 名称。

我所能提供的只是一个解决方法:发送一个带有 400 响应的响应正文,例如“请重新启动您的浏览器”。

关于javascript - *真的*用javascript删除cookies,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6876282/

相关文章:

javascript - 将 json 文件名作为参数传递给外部 js 文件

php - 移动浏览器不支持 session 变量?

javascript - dropzonejs 手动删除服务器上的文件,一次一个

javascript - 为什么 'ABC' .replace ('B' , '$` ') 给出 AAC

javascript - 使用 AJAX 将变量发布到不同文件上的 php 函数并调用该函数

session - 在 clojure/ring 中,如何删除 cookie?

android - CookieManager 和 CookieSyncManager 未将 cookie 同步到 ICS 中的 webview(适用于所有以前的 API 级别)

c# - 使用匿名访问在 Sharepoint 中读取 cookie 时出现问题

jquery - 多子域cookie和ajax问题

javascript - <img> 内容 : default value