監(jiān)控微信小程序wx.request請(qǐng)求失敗-創(chuàng)新互聯(lián)

在微信小程序里,與后臺(tái)服務(wù)器交互的主要接口函數(shù)是wx.request(),用于發(fā)起 HTTPS 網(wǎng)絡(luò)請(qǐng)求。其重要性不言而喻。然而,卻經(jīng)常遇到請(qǐng)求失敗的問題,筆者特意谷歌"wx.request 請(qǐng)求失敗",可以搜索到很多相關(guān)的文章,下面列出一些:

成都創(chuàng)新互聯(lián)長(zhǎng)期為近千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為福貢企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè),福貢網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
  • wx.request 失敗| 微信開放社區(qū)
  • 微信小程序 wx.request 請(qǐng)求失敗- SegmentFault 思否
  • 小程序部分機(jī)型小程序用戶無(wú)法發(fā)起 wx.request 請(qǐng)求,網(wǎng)絡(luò)錯(cuò)誤問題 ...
  • wx.request()失敗,request:fail。_微信小程序開發(fā)
  • request:fail 合集(各種 request:fail 問題)
  • 微信小程序之 wx.request:fail 錯(cuò)誤排查- 簡(jiǎn)書

有些事開發(fā)時(shí)候遇到,有些是產(chǎn)品上線后遇到。線上的情況比開發(fā)和測(cè)試的時(shí)候復(fù)雜的多,失敗的原因可能各種各樣。既然測(cè)試無(wú)法 100%保證上線不會(huì)出問題,我們唯一要做的就是及時(shí)發(fā)現(xiàn)和快速響應(yīng)。

微信小程序運(yùn)維中心提供了錯(cuò)誤日志記錄,但功能還是比較有限。只有簡(jiǎn)單的統(tǒng)計(jì)和錯(cuò)誤展示功能,而往往僅僅靠報(bào)錯(cuò)信息是無(wú)法清晰理解錯(cuò)誤成因的。這個(gè)時(shí)候使用強(qiáng)大的第三方監(jiān)控服務(wù)就很有必要了。

監(jiān)控微信小程序wx.request請(qǐng)求失敗

小程序 Demo

我們使用一款由jectychen開發(fā)的wechat-v2ex來(lái)做演示,v2ex 數(shù)據(jù) api 基本上使用了 samuel1112 的倉(cāng)庫(kù)v2er里封裝的方法。

其運(yùn)行效果如下:

監(jiān)控微信小程序wx.request請(qǐng)求失敗

最左側(cè)本來(lái)應(yīng)該有頭像的,可能由于防盜鏈的原因沒有顯示出來(lái)。

有時(shí)候一個(gè)微信小程序可能會(huì)用到多個(gè)第三方服務(wù),從多個(gè)域名獲取數(shù)據(jù)。以下兩種情況都值得注意:

  • 某些接口做了更新沒有及時(shí)推送通知,該接口的調(diào)用就會(huì)失??;
  • 服務(wù)不夠穩(wěn)定,接口的返回某一時(shí)段特別慢;
  • 某些終端用戶的數(shù)據(jù)不符合導(dǎo)致接口失敗。

因此產(chǎn)品上線以后,對(duì)接口的調(diào)用進(jìn)行監(jiān)控是很有必要的。

接入監(jiān)控

Fundebug 的微信小程序錯(cuò)誤監(jiān)控插件支持監(jiān)控 HTTP 請(qǐng)求錯(cuò)誤:

  • 當(dāng)請(qǐng)求返回的 statusCode 不是 2xx 或者 fail 回調(diào)函數(shù)被觸發(fā)的時(shí)候,F(xiàn)undebug 的小程序監(jiān)控插件會(huì)捕獲該錯(cuò)誤并發(fā)送到服務(wù)器。
  • 如果接口請(qǐng)求耗時(shí)過長(zhǎng),我們也可以配置httpTimeout來(lái)監(jiān)控。

要使用 Fundebug 監(jiān)控,你需要去Fundebug網(wǎng)站注冊(cè)賬號(hào)并創(chuàng)建一個(gè)微信小程序監(jiān)控項(xiàng)目,然后按照提示接入插件。你需要下載微信小程序監(jiān)控的 JS 腳本放入到自己的項(xiàng)目中,然后引入并通過fundebug.init()函數(shù)作必要的配置。

var fundebug = require("./utils/fundebug.1.3.1.min.js");
fundebug.init({
    apikey: "YOUR-API-KEY",
    monitorHttpData: true,
    httpTimeout: 2000,
    monitorMethodCall: true,
    monitorMethodArguments: true,
    setSystemInfo: true,
    setUserInfo: true,
    setLocation: true
});

插件默認(rèn)會(huì)監(jiān)控 HTTP 請(qǐng)求錯(cuò)誤,并上報(bào) Header 部分的信息,我們無(wú)需做配置。為了方便 Debug,我們配置monitorHttpData來(lái)記錄 body 部分的信息;我們將httpTimeout設(shè)置為 2000 毫秒,超過該時(shí)長(zhǎng)的請(qǐng)求會(huì)被上報(bào)到服務(wù)器。

Request:fail 錯(cuò)誤

為了演示wx.request返回 request:fail 錯(cuò)誤,我特意將utils/api.js中的HOST_URI改錯(cuò)。

var HOST_URI = 'https://www.w2ex.com/api/';

然后保存運(yùn)行。Fundebug 收到上報(bào)的錯(cuò)誤,該請(qǐng)求花了 7072 毫秒,然后返回請(qǐng)求失敗。

監(jiān)控微信小程序wx.request請(qǐng)求失敗

通過用戶行為可以更加清楚地了解整個(gè)小程序的運(yùn)行過程:

監(jiān)控微信小程序wx.request請(qǐng)求失敗

404 錯(cuò)誤

這次,我將獲取最新話題的接口做點(diǎn)更改,故意將latest寫出lastest

var LATEST_TOPIC = 'topics/lastest.json';

保存運(yùn)行,F(xiàn)undebug 捕獲該錯(cuò)誤并上報(bào)到服務(wù)器:

監(jiān)控微信小程序wx.request請(qǐng)求失敗

參數(shù)錯(cuò)誤

獲取某一個(gè)話題詳情的時(shí)候,應(yīng)該傳入對(duì)應(yīng)的 id。如果 id 是 null、undefined、或則本來(lái)是數(shù)字我們傳入字符串,看看結(jié)果怎么樣。

下圖可知當(dāng)我們將參數(shù) id 設(shè)為undefined的情況下,接口返回 404。并返回消息:

{
    "message": "Object Not Found",
    "status": "error"
}

監(jiān)控微信小程序wx.request請(qǐng)求失敗

關(guān)于Fundebug

Fundebug專注于JavaScript、微信小程序、微信小游戲、支付寶小程序、React Native、Node.js和Java線上應(yīng)用實(shí)時(shí)BUG監(jiān)控。 自從2016年雙十一正式上線,F(xiàn)undebug累計(jì)處理了10億+錯(cuò)誤事件,付費(fèi)客戶有陽(yáng)光保險(xiǎn)、核桃編程、荔枝FM、掌門1對(duì)1、微脈、青團(tuán)社等眾多品牌企業(yè)。歡迎大家免費(fèi)試用!

監(jiān)控微信小程序wx.request請(qǐng)求失敗

版權(quán)聲明

轉(zhuǎn)載時(shí)請(qǐng)注明作者 Fundebug以及本文地址:
https://blog.fundebug.com/2019/07/01/monitor-wx-request-fail/

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享題目:監(jiān)控微信小程序wx.request請(qǐng)求失敗-創(chuàng)新互聯(lián)
文章起源:http://muchs.cn/article14/dcoege.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁(yè)設(shè)計(jì)公司、網(wǎng)站制作、搜索引擎優(yōu)化網(wǎng)站收錄、網(wǎng)站建設(shè)、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)