0

我正在使用 jQuery .load() 在 div 中加载一些页面。我正在使用 Chrome 的移动网站模拟器测试一个移动网站。

除此之外,问题是我收到此错误:

XMLHttpRequest 无法加载 .../www/pages/welcome_header.html。收到无效回复。因此,Origin 'null' 不允许访问。

事实上,这个问题只有 Chrome 才有。

看起来一个解决方案是使用

--allow-file-access-from-files 启动 Chrome 时。

但是如何在 Windows 8 上做到这一点?

我试过了

“运行”==>“chrome --allow-file-access-from-files”。

但是没有效果

提前感谢您提供任何线索。

4

1 回答 1

1

更新:证明它可以在我的 Windows 8 机器上运行,并为您提供一些故障排除步骤:

在此处输入图像描述

  1. 本地文件
  2. 关于 Chrome 标志的警告
  3. 这些是通过 RequireJS(使用 XMLHttpRequest)加载的文本文件

详细步骤/故障排除:

  1. 以管理员身份登录以确保安全限制不会阻止任何事情。
  2. 确保所有 Chrome 实例都已关闭。
  3. 确保 Chrome 以“桌面”模式运行。在 Windows 8 中,Chrome 可以在“Windows 8”Metro 模式下运行,该模式具有更严格的安全限制。
  4. 运行以下命令(从“运行”菜单、cmd.exe 或批处理文件):

    chrome --disable-web-security --allow-file-access-from-files
    

更新2:

您收到的错误消息与我省略时收到的错误消息不同--allow-file-access-from-files

XMLHttpRequest 无法加载 file:///C:/Users/.../main.coffee。仅 HTTP 支持跨源请求。

  1. 使用最新版本的 Chrome。
  2. 检查您如何使用XMLHttpRequest. 检查浏览器调试器的网络选项卡。也许 Chrome 对您的文件 URL 的解释与其他浏览器不同?

(......我猜--disable-web-security这不是必需的。)


--allow-file-access-from-filesChrome首次启动时必须通过。首先确保 Chrome 的所有实例都已关闭(否则不带参数的实例会被重新使用)。我也会添加--disable-web-security一个很好的衡量标准。Chrome 应显示有关不受支持和不安全设置的黄色通知横幅警告。

我一直这样做是为了在本地测试 iPad 的混合应用程序。

于 2014-06-04T13:26:21.247 回答