【问题标题】:Cross-domain error with Chrome in local dev only. How to resolve?仅在本地开发中使用 Chrome 的跨域错误。如何解决?
【发布时间】:2014-03-13 08:25:14
【问题描述】:

我在本地机器上遇到跨域错误(尽管代码在我们的网络服务器上运行良好)。这对开发来说真的很痛苦,所以我想知道的是 - 我可以调整 Chrome 中的设置以不再在本地出现该错误吗?

就是这个:

不安全的 JavaScript 尝试从具有 URL 文件:///Users/david/varReturn.html 的框架访问具有 URL 文件:///Users/david/login.html 的框架。域、协议和端口必须匹配。

谢谢!

【问题讨论】:

    标签: javascript google-chrome


    【解决方案1】:

    Google 决定离线文件访问是跨域的,无论如何。您可以尝试使用--allow-file-access-from-files 运行 chrome。我在使用 JavaScript 从同一文件夹中读取文本文件时遇到了同样的问题。

    【讨论】:

    • 超级荒谬的部分:对于我在做什么(不是他在做什么),你不允许离线跨域(我不是,但谷歌认为我是),但是你被允许上网。因此,Google 基本上是在说“不能信任您离线管理自己的文件;这可能很危险!但是,我们将允许任何域在线访问任何其他域的文本文件。”
    • 您好 Rhyono,感谢您的回复!我将如何在 OSX 上使用此开关?
    • 如果没有此策略,您保存到磁盘的网页可能会将不相关的文件从您的磁盘上传到任何允许跨域请求的服务器。
    • @KevinReid 应该分析一下跨域和不跨域的区别,而不是说“跨域;不行!”它对同一文件夹中的文件说不。如果它更智能,它会检查路径是否相同,并且它显然不是跨域的。
    • +1,这比 --disable-web-security 替代方案要好得多。
    猜你喜欢
    • 1970-01-01
    • 2012-09-13
    • 1970-01-01
    • 2014-04-27
    • 1970-01-01
    • 2014-10-30
    • 2021-01-08
    • 2015-07-07
    • 2020-04-25
    相关资源
    最近更新 更多