【发布时间】:2016-06-18 19:48:32
【问题描述】:
文件在服务器上。文件结构如下:
../index.html
../js/data.json
../js/insert.js
我需要访问这个 json 文件。我在 insert.js 中尝试过这个
$.get('data.json', function(data) {
console.log(data);
});
我得到了
XMLHttpRequest 无法加载 .... 否 请求中存在“Access-Control-Allow-Origin”标头 资源。 Origin ...因此不允许访问。
当我使用 JSON 文件的绝对路径时,它工作得很好。我需要它与相对路径一起工作。怎么了?
【问题讨论】:
-
所以你的文件是从你的基本路径向上的 1 个目录?
-
您的 $.get 正在尝试访问域 data.json(如 www.data.json)并从那里提取信息。这就是您收到 XSS 错误的原因。需要使用相对路径,比如$.get('/js/data.json')。
-
路径显然是错误的,但这是一个 CORS 错误,在这种情况下很奇怪。您是否尝试从
file://协议打开此页面?还是在与服务器不同的端口上加载页面? -
所以应该是这样的:
$.get('/js/data.json', function(data) { console.log(data); });?这仍然不起作用,同样的错误。该页面部署在网络服务器上,我通过 Chrome 打开它。恐怕我不知道你在问什么。 -
在浏览器开发工具网络中查看实际使用的 url 是什么以及它是否与预期不同。
标签: jquery json relative-path