使用apicloud ajax往数据库插入数据时,如果时间长(60m左右),虽然数据成功插入,不过还会返回网络请求超时,或别的错误。
1.会返回'网络请求超时,请稍后重试!',代码如下
function ajax(ip, url, data, callback, timeout) {
var params = {
url : 'http://' + ip + '***' + url,
method : 'post',
timeout : 60,
headers : {
company_id : $common.getStorage('company_id') ,
store_id : $common.getStorage('store_id'),
user_id : $common.getStorage('user_id'),
password : $common.getStorage('password'),
tablet_id : $common.getStorage('tablet_id'),
sys_date : $common.getStorage('sys_date'),
'Connection' : 'close',
'Content-Type' : 'application/json'
}
};
if (data) {
params.data = {
body : $common.jsonToStr(data)
};
}
console.debug(params.url);
var startTime = new Date().getTime();
api.ajax(params, function(ret, err) {
var endTime = new Date().getTime();
if (ret) {
console.debug((endTime - startTime) + 'ms -- ret: ' + $common.jsonToStr(ret));
}
if (err) {
console.debug((endTime - startTime) + 'ms -- err: ' + $common.jsonToStr(err));
if (err.body.relogin) {
$common.hideProgress();
$common.alertWarning('登录已过期, 请重新登录');
api.execScript({
name : 'root',
script : 'relogin(' + err.body.download_master + ');'
});
return;
}
}
callback(ret, err);
});
};
2.会返回其他错误,与上面代码唯一的不同是把timeout改成120,图片如图,请问这是什么原因呢