【问题标题】:Firefox SecurityError: "The operation is insecure."Firefox SecurityError:“操作不安全。”
【发布时间】:2016-05-04 16:45:42
【问题描述】:

我正在使用带有主干应用程序的Backbone.LocalStorage 插件。它在 chrome 和 safari 中运行良好,但是在 Firefox 中它给了我以下错误。

DOMException [SecurityError:“操作不安全。” 代码:18 ns结果:0x80530012 地点:http://localhost:8000/js/libs/backbone.localStorage/backbone.localStorage.js?version=1453910702146:137]

我正在使用 python simpleHttpServer

我该如何解决这个错误?

更新

这是我的代码。

paths: {
    'jquery'        : 'libs/jquery/dist/jquery',
    'underscore'    : 'libs/underscore/underscore',
    'backbone'      : 'libs/backbone/backbone',
    'localStorage'  : 'libs/backbone.localStorage/backbone.localStorage',
    'text'          : 'plugins/text'
}

这里是使用 localStorage 的集合。

var Items = Backbone.Collection.extend({

    model: SomeModel,

    localStorage: new Backbone.LocalStorage('items'),
});

更新 2

我正在使用 Firefox 36。

更新 3

这似乎是一个 CORS 问题,但我的 firefox 版本是 36。应该没问题。

更新 4

我在 firefox nightly 版本 44 中也遇到了这个错误。我还将我的 firefox 更新到了版本 44。仍然是同样的错误。

【问题讨论】:

  • 希望您使用的是 firefox 29。那么它是一个 firefox 错误
  • 我使用的是 Firefox 36。
  • Firefox 58 在这里,但我仍在处理此类错误
  • 还有 Firefox 60 ... :(
  • FF 61.0.2 在这里并试图解决这个问题,当它在 Chrome 和 Edge 中工作时。

标签: javascript html firefox backbone.js cors


【解决方案1】:

我在一个脚本中遇到了类似的问题,我发现它需要 SSL websockets,所以我启动了 SSL 并再次检查,它工作正常。 尝试启用HTTPS并以https://127.0.0.1/访问网站可能会解决错误。

【讨论】:

    【解决方案2】:

    确保 Firefox 已启用 cookie。 该设置可以在菜单/选项/隐私/历史记录下找到

    在下拉菜单中,选择“记住历史记录”,或者如果您更喜欢使用自定义设置历史记录,但选择选项接受来自站点的 cookie

    希望对你有帮助。

    【讨论】:

      【解决方案3】:

      当我们尝试访问位于不同域的资源 (CSS...) 时,就会发生这种情况。为了处理这个错误,我们可以使用这个:

                         try {
                           //your critical access to ressources !
                           //rules = document.styleSheets[i].cssRules;
                              } catch(e) {
                         if(e.name !== "SecurityError") {
                             throw e;
                             }
      

      【讨论】:

        【解决方案4】:

        确保您的域相同。验证Same Origin Policy,这意味着相同的域、子域、协议(http vs https)和相同的端口。

        What is Same Origin Policy?
        How does pushState protect against potential content forgeries?

        【讨论】:

        • 我知道这是同源策略的问题,但是我不确定如何解决这个问题?我也不明白为什么会发生这种情况,因为我没有向另一个域发送任何请求。在这种情况下,所有资源都在同一个域中,即 localhost。
        • 将您的代码 sn-p 放入您的问题中以继续进行
        猜你喜欢
        • 2012-11-01
        • 2013-04-28
        • 2019-01-28
        • 1970-01-01
        • 2020-04-03
        • 1970-01-01
        • 2014-05-19
        • 1970-01-01
        • 2021-03-03
        相关资源
        最近更新 更多