【发布时间】:2018-06-27 00:58:56
【问题描述】:
也许我的 Google-Fu 已经抛弃了我,但我找不到关于 this outdated Mozilla page 以外的文件 URI 的同源策略的良好描述。谁能指出我对文件 URI 的同源策略的解释?特别是,如果我从(比如说)file:///C:/Users/Joe/Test/test.html 加载了一个脚本,那么该脚本允许使用 XMLHttpRequest 访问哪些文件?我应该如何指定 URI,即相对于脚本的 URI?
请注意,我并不是在寻求绕过跨域限制的方法,只是了解我需要将资源驻留在哪里,以便在不触发跨域错误的情况下加载它们。
【问题讨论】:
-
你想看看CORS。
-
file:///uri 在不同浏览器中的“同源策略”的工作方式不同 - chrome 有一个命令行标志可以使它们“同源”(至少在 Firefox 中) - 其他浏览器不值得谈论:p -
@JaromandaX +1 给你的评论,但具有讽刺意味的是,其他浏览器不值得讨论,特别是 IE 和 Edge,恰好是最容易使用的对于这样的开发场景。它们都可以在
file:///和 CORS 组合中顺利工作,无需任何命令行标志或任何其他步骤。 -
这就是为什么他们不值得谈论@RacilHilan - 因为他们工作:p
-
我认为有一个不太危险的标志,
--allow-file-access-from-files