【问题标题】:Use javascript to delete all cookies not working使用 javascript 删除所有不工作的 cookie
【发布时间】:2018-12-05 16:57:43
【问题描述】:

在 HTML 页面上,我使用此 javascript 代码设置 cookie

this.store.setItem = function(name, value) {
    document.cookie = name + '=' + encodeURIComponent(value) + '; expires=' + expires;
};

我正在尝试创建一个函数来删除所有可能通过前一个函数设置的 cookie。我发现了不同的threat 关于使用 javascript 清除 cookie...这是我测试过的代码示例

deleteAllCokies : function() {
    var res = document.cookie;
    var multiple = res.split(";");
    for(var i = 0; i < multiple.length; i++) {
        var key = multiple[i].split("=");
        document.cookie = key[0]+" =; expires = Thu, 01 Jan 1970 00:00:00 UTC";
    }
}

代码在运行最新浏览器的计算机上完美运行。但是,当我在旧版浏览器上尝试代码时(我将该页面作为 webOS 应用程序运行),尝试删除 cookie 时出现错误

SecurityError: DOM Exception 18: 试图突破 用户代理的安全策略。

有人知道这个问题吗?

【问题讨论】:

标签: javascript cookies webos


【解决方案1】:

其他浏览器可能包含由您的脚本无权删除的其他来源创建的其他 cookie。尝试转储 console.log 中的所有 cookie 以验证这一点。

【讨论】:

    【解决方案2】:

    我在 webos 1.x 和 2.x 中看到了这个错误。如果您的应用程序存储在本地(内置 ipk),则操作系统强制使用 file:// 访问文档的协议。你可以查看这个thread

    LG 建议使用webStorage 或通过webserver 提供您的应用程序

    PS:托管的网络应用程序将使用 HTTP/HTTPS 协议访问文档

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-13
      • 1970-01-01
      • 2010-10-10
      • 1970-01-01
      • 2014-12-02
      • 2010-09-15
      相关资源
      最近更新 更多