所以我知道问这个问题太蹩脚了,因为我花了一天时间搜索这个主题但没有成功。和其他许多人一样,我面临着跨域问题。我随处看到的建议是更新服务器上的 JSON 文件或使用我无法使用的 localhost,因为我的作业不允许这样做。
我发布这个问题希望有其他解决方案。 我需要使用纯 JavasSript 和 Ajax 在本地从 JSON 文件获取数据,这不涉及在服务器或本地主机上托管(使用绝对路径也是一个坏主意)。
这是我到目前为止的代码:
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);
})
})()
最佳答案
您将无法使用 AJAX/XHR 访问本地文件。它不是为此目的而设计的。 您可以做的是将 json 数据分配给 json 文件中的变量,
var data = [{
}];
然后使用 script
标记加载 json 文件,如下所示:
<script type="text/javascript" src="file_name.json"></script>
现在可以使用 data
变量访问所有 json 数据。
关于javascript - 使用纯Javascript Ajax从本地获取json数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34108704/