更新: 官网找到timeout了 藏的太深 没有和request介绍联系起来 放个链接地址:networktimeout
http://uniapp.dcloud.io/collocation/manifest?id=networktimeout
封装
let globalPostRequest = function (url,data,callback,isWait=true,isPost=true) {
if (isWait) {
uni.showLoading({
title: '正在加载'
});
}
console.log('正在请求:xxxxxxxxx' + url);
console.log('参数:' + JSON.stringify(data));
let requestName = 'requestTask'+ JSON.stringify(url);
let timeout = null;
requestName = uni.request({
url: 'xxxxxxxxx' + url,
data: data,
method: isPost == true?'POST':'GET',
dataType: 'json',
header: {
'Accept-Language':'zh-CN,en-US;q=0.8'
},
success: (data,statusCode) => {
console.log('请求成功:'+JSON.stringify(data.data));
callback(data.data);
},
fail:() => {
console.log('请求失败fail');
const errordata = {"status":false,"code":404,"data":null,"message":"网络繁忙"}
callback(errordata);
},
complete:() => {
uni.hideLoading();
requestName = null;
if (timeout != null) {
clearTimeout(timeout);
timeout = null;
}
}
});
//timeout
timeout = setTimeout(() => {
if (requestName != null) {
requestName.abort();
console.log('请求失败abort');
}
},20000)
}
调用
users_getMyBook:(userid) => {
qx.globalPostRequest('xxxxxxxxx',{
userid:userid
},
function(data){
if (data&&data.status) {
//成功
} else{
uni.showToast({
title: data.message,
duration: 2000
});
}
})
3 个评论
要回复文章请先登录或注册
w***@foxmail.com
湖东呀 (作者)
DCloud_heavensoft