【发布时间】:2016-03-10 14:06:38
【问题描述】:
所以我知道问这个问题太蹩脚了,因为我花了一天时间搜索这个主题,但没有任何成功。和其他许多人一样,我面临着跨域问题。我到处看到的建议是更新服务器上的 JSON 文件或使用我不能使用的 localhost,因为我的分配不允许这样做。
我发布这个问题希望有其他解决方案。 我需要使用纯 JavasSript 和 Ajax 从本地 JSON 文件中获取数据,这不涉及托管在服务器或 localhost 上(使用绝对路径也是一个坏主意)。
这是我目前的代码:
function loadJSON(callback) {
var xobj = new XMLHttpRequest();
xobj.overrideMimeType("application/json");
xobj.open('GET', '/json/userinfo.json', true);
xobj.onreadystatechange = function () {
if (xobj.readyState == 4 && xobj.status == "200") {
callback(xobj.responseText);
}
};
xobj.send(null);
}
(function() {
loadJSON(function(response){
var actual_JSON = JSON.parse(response);
console.log(actual_JSON);
})
})()
【问题讨论】:
-
使用了哪个浏览器? , 铬合金 ?见stackoverflow.com/questions/32996001/…
-
如果是 IE 则必须强制
ActiveXObject('Microsoft.XMLHTTP')获取本地文件:stackoverflow.com/questions/2142156/… -
@guest271314 我不能用浏览器做任何事情,因为我的教练会让它在他自己的电脑上运行
-
@LuckyLam 是
js在帖子中没有返回预期结果吗? -
@guest271314 是的,它在 Chrome 上给出错误提示“跨源请求仅支持协议方案:http、data、chrome、chrome-extension、https、chrome-extension-resource。”在 Firefox 上,我可以让它工作,但必须使用绝对路径,相对路径不起作用,给出错误“NS_ERROR_DOM_BAD_URI:访问受限 URI 被拒绝”
标签: javascript json ajax