這篇文章給大家分享的是有關(guān)如何解決微信小程序網(wǎng)絡(luò)超時(shí)的問(wèn)題的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

長(zhǎng)嶺ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話(huà)聯(lián)系或者加微信:18982081108(備注:SSL證書(shū)合作)期待與您的合作!
微信小程序網(wǎng)絡(luò)超時(shí)的解決辦法:1、在onLaunch運(yùn)行任務(wù)如果超時(shí),就把錯(cuò)誤級(jí)別定為0,并轉(zhuǎn)向錯(cuò)誤頁(yè)面;2、如果是頁(yè)面請(qǐng)求超時(shí),就把錯(cuò)誤定為2,可以通過(guò)重試來(lái)修復(fù)。
微信小程序網(wǎng)絡(luò)超時(shí)的解決辦法:
onLaunch通過(guò)這個(gè)我們可以獲取用戶(hù)的基本信息,或者定位用來(lái)做下一步處理,如果這個(gè)無(wú)法獲取數(shù)據(jù),會(huì)導(dǎo)致整個(gè)小程序的失敗。
所以我建議可以把錯(cuò)誤分兩個(gè)級(jí)別,假如是開(kāi)發(fā)者服務(wù)器連接不上,可以通過(guò)重載頁(yè)面來(lái)處理,但是如果是onLaunch中的數(shù)據(jù)也無(wú)法獲取就必須讓用戶(hù)退出小程序,重新打開(kāi)再試了。
app.json 中配置用來(lái)設(shè)置超時(shí)時(shí)間,默認(rèn)為6000毫秒,也就是6秒
"networkTimeout": {
"request": 6000,
"downloadFile": 10000
}相關(guān)學(xué)習(xí)推薦:微信小程序開(kāi)發(fā)教程
一、在onLaunch運(yùn)行任務(wù)如果超時(shí),我把錯(cuò)誤級(jí)別定為0,并轉(zhuǎn)向錯(cuò)誤頁(yè)面
wx.login({
success(res) {
if (res.code) {
//console.log(res.code);
//發(fā)起網(wǎng)絡(luò)請(qǐng)求
wx.request({
url: 'https://**/index/zz/getuserinfo',
data: {
code: res.code
},
success: res => {
wx.setStorageSync('open_id', res.data.openid);
wx.setStorageSync('session_id', res.data.session_id);
wx.setStorageSync('session_key', res.data.session_key);
that.globalData.isSessionkey=true;
//console.log(res.data);
if (that.sessionCallback) {
that.sessionCallback(res);
}
},fail:f=>
{
wx.showModal({
title: '提示',
showCancel: false,
content: '可能網(wǎng)絡(luò)不太好,請(qǐng)重試!',
success: function () {
wx.navigateTo({
url: '/pages/reload?error=0'
});
}
});
}
})
} else {
console.log('登錄失敗!' + res.errMsg)
}
}, fail: function () {
wx.showModal({
title: '提示',
showCancel: false,
content: '可能網(wǎng)絡(luò)不太好,請(qǐng)重試!',
success: function () {
wx.navigateTo({
url: '/pages/reload?error=0'
});
}
});
}
});二、如果是頁(yè)面請(qǐng)求超時(shí),我把錯(cuò)誤定為2,可以通過(guò)重試來(lái)修復(fù)
wx.request({
url: webUrl + model.url,
data: model.param,
method: model.method,
success: function (res) {
},
fail: function (res) {
wx.hideLoading();
wx.showModal({
title: '提示',
showCancel: false,
content: '可能網(wǎng)絡(luò)不太好,請(qǐng)重試!',
success: function () {
wx.navigateTo({
url: '/pages/reload?error=1'
});
}
});
}
})三、處理頁(yè)面:要使用getCurrentPages()獲取上一頁(yè)對(duì)象,必須使用wx.navigateTo轉(zhuǎn)向此頁(yè)
/**
* 頁(yè)面的初始數(shù)據(jù)
*/
data: {
error:0 // 0:需要退出小程序 1:可以重新發(fā)起網(wǎng)絡(luò)請(qǐng)求重試
},
reLoad:function(error)
{
var pages = getCurrentPages();//獲取頁(yè)面棧
if (pages.length > 1) {
//上一個(gè)頁(yè)面實(shí)例對(duì)象
var prePage = pages[pages.length - 2];
let url=prePage.route;
var options = prePage.options //如果要獲取url中所帶的參數(shù)可以查看options
console.log('options', options);
//拼接url的參數(shù)
var urlWithArgs = url + '?'
for (var key in options) {
var value = options[key]
urlWithArgs += key + '=' + value + '&'
}
urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1)
wx.reLaunch({
url: '/' + urlWithArgs,
fail:function(e)
{
wx.switchTab({
url: '/' + prePage.route,
})
}
});
}
},
/**
* 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面加載
*/
onLoad: function (options) {
this.setData({ error: options.error});
// this.reLoad(options.error);
},感謝各位的閱讀!關(guān)于“如何解決微信小程序網(wǎng)絡(luò)超時(shí)的問(wèn)題”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
當(dāng)前名稱(chēng):如何解決微信小程序網(wǎng)絡(luò)超時(shí)的問(wèn)題
地址分享:http://chinadenli.net/article30/geippo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、面包屑導(dǎo)航、、網(wǎng)站維護(hù)、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)