我正在编写一个在本地计算机上运行良好的脚本,但是当我将其上传到我的网络服务器时,我的 $.getJSON 请求不起作用。
function loadData(fileName) {
return $.getJSON(fileName + ".json");
}
var data;
var myFile = "Data";
loadData(myFile).done(function (data1) {
if (data1 && data1.info) {
data = data1;
$.each(data1.info[0], function (key, value) {
alert(value);
});
}
});
我已经删除了很多内部代码,这些代码基本上只是获取结果并将它们放入 html 元素中。我请求的网址位于远程服务器上,但当我从硬盘驱动器运行此 html 页面时它可以工作。当我将它上传到我的网络服务器时,它没有弹出,就像 $.getJSON 甚至没有运行。
我将它作为文件夹上传到apache
Folder
|
|-->Index.html
|
|-->Data.json
最佳答案
不要依赖 $.getJSON()
方法,而是使用 $.ajax()
:您将对请求 header 拥有更多控制权。
尝试使用以下选项,并将函数调用与您的应用程序特有的参数集成:
$.ajax({
type: "POST",
url: "some-url.json",
contentType: "application/json; charset=utf-8",
dataType: "json"
});
$.ajax()
方法的完整文档可以在 here 找到。 .
关于jquery - $.getJSON 在本地工作,但在上传到 Web 服务器时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15655349/