就在昨天,这个代码在我的LAMP中启动并运行,我不确定是否可以造成任何重大变化。它是一个简单的ajax脚本,可以从API中检索数据。
今天它停止工作,控制台只是抛出“NetworkError:发生网络错误。”,甚至更奇怪的是,当我自己尝试格式化的GET查询时,一切正常,API响应正确。
http://localhost/uzduotis2/data/mobile/api/mobile.php?query%5Boperators%5D%5B0%5D=1&query%5Boperators%5D%5B1%5D=2&query%5Boperators%5D%5B2%5D=3&query%5Bmin%5D=180&query%5Bsms%5D=400&query%5Bmb%5D=128&query%5Bperks%5D=7&_=1385898696657
好吧,我不知道我还能做些什么 - 也许有办法让错误代码更具体?...无论如何,这是代码:
function ajaxCall(url, req, req_type, async) {
return jQuery.ajax({
type: req_type,
url: url,
data: req,
contentType: "charset=utf-8",
dataType: 'json',
timeout: 30000,
async: async,
cache: false,
});
}
var ApiUrl = "http://localhost/uzduotis2/data/mobile/api/mobile.php";
$(document).ready(function() {
// .....
var req = {query: {operators: Operators, min: Min, sms: Sms, mb: Mb, perks:Perks}};
var promise = ajaxCall(ApiUrl, req, 'GET', false);
promise.success(function(out) {
console.log(out);
// populate(out);
});
promise.error(function(out){
console.log(out);
});
}
修改
我刚刚发现它适用于另一个浏览器,必须是缓存相关的问题,也许有人知道它会是什么?
答案 0 :(得分:0)
您必须以异步方式返回数据,因此必须将异步设置为true
var promise = ajaxCall(ApiUrl, req, 'GET', true);