微信小程序真機(jī)預(yù)覽不能post
1、小程序真機(jī)測試沒有問題,但是預(yù)覽出問題
使用微信開發(fā)者工具,點(diǎn)擊編譯,在開發(fā)者工具中,邏輯功能完全沒有問題;點(diǎn)擊真機(jī)調(diào)試,也沒有問題,但是點(diǎn)擊預(yù)覽,此時(shí)就不行網(wǎng)絡(luò)請求失敗。首先查看一下,你請求數(shù)據(jù)的域名,是否已經(jīng)配置過了。如果沒有,則配置一下
設(shè)置路徑為:登錄小程序的后臺管理頁面--->開發(fā)--->開發(fā)管理---->服務(wù)器域名 。
之后去你的開發(fā)者工具里面更新一下,如下圖所示
之前,在本地設(shè)置里,勾選了不校驗(yàn),所以你本地跑沒問題,但是線上預(yù)覽,就出bug了,把請求服務(wù)器加進(jìn)入就好了
2、為什么微信小程序異常
也接觸了不少人解決問題的過程里,有一些比較難以排查的可能性列舉在這,方便大家看一下:
特別提示:為了排除問題所在,建議針對問題制作最簡demo,以便最小化縮小其他內(nèi)容或代碼對問題的影響范圍。
1:ES6;使用es6可能導(dǎo)致安卓端真機(jī)調(diào)試時(shí)很多問題出現(xiàn),還有其他未知問題;原因未知;
2:字母拼錯(cuò),包括字母拼寫錯(cuò)誤,大小寫沒有注意;微信小程序中,有大量這樣的代碼示例,從中間冒出一個(gè)大寫,比如支付中的appId 比如微信官方的分享示例代碼就是有誤的。。。
3:官方文檔示例代碼有誤,有時(shí)官方文檔示例代碼也會出現(xiàn)問題,比如大小寫出錯(cuò),或者其他缺少參數(shù)等問題;
4:https,這個(gè)坑目前遇到的人最多,首先說明一下,工具的這個(gè)設(shè)置,[圖片上傳中。。。(2)],這個(gè)設(shè)置有一些獨(dú)特的作用,讓你可以讓本地避開一些限制;但是這個(gè)設(shè)置對真機(jī)無效,所以假如存在https問題,是否勾選并影響;仍然需要按貼排查:http://www.wxapp-union.com/thread-648-1-1.html
5:官方BUG,你遇到的問題可能是官方仍未解決的bug,具體可以參考官方文檔FAQ文檔地址
6:官方文檔;官方文檔是解決問題的不二之選,建議在解決問題時(shí),不斷的看官方文檔,并且仔細(xì)看,盡量從官方文檔中找出解決方案;
7:調(diào)試工具:官方開發(fā)者工具及手機(jī)端,都提供了調(diào)試工具,基本跟原本大家常用的調(diào)試工具相差無幾,可用利用調(diào)試工具多做各種調(diào)試,以免排查問題;調(diào)試方法,新手可以搜索網(wǎng)上相關(guān)firebug教程或?yàn)g覽器調(diào)試教程或調(diào)試教程;
8:重啟大法:有時(shí)候編輯器會出現(xiàn)一些莫名其妙的BUG,比如昨天還是好的,今天打開各種問題等等,可以考慮重新編譯或多次重啟工具或重啟電腦;
9:新手跳坑;我們?yōu)樾率譁?zhǔn)備了很多常見的問題,http://www.wxapp-union.com/portal.php
10:前人經(jīng)驗(yàn):有很多人遇到了很多問題,你可以在版塊的問答分類下看看其他人遇到的問題及如此解決的;http://www.wxapp-union.com/forum-2-1.html
11:無法登陸:參考@M-信念 同學(xué)的建議:可以稍微等等;當(dāng)出現(xiàn)帳號登陸問題時(shí),可以嘗試使用他人微信號,或是咨詢其他人是否也遇到了相同的情況,不要著急;
12:代理設(shè)置;代理設(shè)置應(yīng)該是一個(gè)隱藏比較深的坑,但是很多人被坑過,假如你的機(jī)器設(shè)置了代理,開發(fā)者工具可能會也跟著默認(rèn)帶來代理,然后會接踵而來很多登陸,空白等問題;
13:使用搜索;現(xiàn)在本站及官方均聚合了大量的微信小程序相關(guān)內(nèi)容,可以考慮使用其中的搜索,來獲取自己想找的東西或用于解決問題,搜索時(shí),請使用主要關(guān)鍵詞,或相近關(guān)鍵詞進(jìn)行搜索,而不要直接搜索一句話,比如你需要appid,你可以搜索“appid”,你遇到了登陸問題,應(yīng)該搜索“登陸”,真機(jī)預(yù)覽遇到了問題,可以搜索“真機(jī)”,遇到了上傳問題,可以搜索“uploadfile”
14:微信版本問題,伴隨微信的版本更新,不同的微信版本之間可能會出現(xiàn)不同的未知BUG;你可以在weixin.qq.com內(nèi)查看最新版本。
15:微信緩存;微信緩存會導(dǎo)致很多未知的bug,目前發(fā)現(xiàn)的有無法真機(jī)預(yù)覽,以及跳出錯(cuò)誤:需要清除應(yīng)用緩存,或者使用第二部手機(jī)進(jìn)行測試方可排除此問題;On PageReady can not find XXXXXX, app service not ready
16:使用了非官方提供的方法;使用了部分非官方提供的方法比如Object.assign,可能會導(dǎo)致未知的問題,建議優(yōu)先使用官方組件來實(shí)現(xiàn);
版權(quán)說明:本文部分內(nèi)容來源于網(wǎng)絡(luò),由小程序社區(qū)(wxapp-union.com)整理編輯,有問題請聯(lián)系我們
3、微信小程序接受不到POST的值
首先將鏈接復(fù)制到postman去執(zhí)行一下,看看是不是鏈接有問題,或者參數(shù)沒有傳,然后去檢查代碼結(jié)合微信文檔看看代碼哪里有問題。 直接找客服給你調(diào)整,自己亂設(shè)置問題4、微信小程序上線后請求接口總是失敗?
本地小程序開發(fā)工具測試請求接口都很正常,使用預(yù)覽和真機(jī)調(diào)試功能在手機(jī)上運(yùn)行請求接口總是失敗。
小程序上線后,部分手機(jī)請求接口正常,部分手機(jī)請求接口失敗,將請求接口復(fù)制到谷歌瀏覽器中查詢總是成功的。
restful 接口定義為: https://ip:port/bus/:router_name ,其中 router_name 是個(gè)變量。實(shí)際請求接口為: https://ip:port/bus/993路 ,可以看到:請求地址中的變量 router_name 被 993路 給替換了。問題就出在這里, 請求地址中含有中文 。
在 小程序開發(fā)工具 、 谷歌瀏覽器 和 部分請求成功的手機(jī) 上最終發(fā)出的請求都會對請求地址中的中文漢字進(jìn)行編碼,如下:
在 開發(fā)工具中預(yù)覽功能 、 開發(fā)工具中真機(jī)調(diào)試功能 和 部分請求不成功的手機(jī) 上最終發(fā)出的請求并不會對中文進(jìn)行編碼,如下:
上面分析了請求接口失敗是因?yàn)椴糠质謾C(jī)沒有對請求地址中的中文進(jìn)行編碼,解決方法為利用 js 自帶的 api encodeURIComponent() 處理。
有一點(diǎn)需要注意:不能對整個(gè)請求地址進(jìn)行編碼,那么的話會對所有除字母、數(shù)字以外的符號進(jìn)行編碼,會變成下面這樣,實(shí)際請求中仍然會報(bào)錯(cuò)。
在處理 restful 接口過程中,有一步用具體指(如: 991路 )替換請求地址中的變量(如: https://ip:port/bus/:router_name 中的 :router_name ),此時(shí)先對 991路 進(jìn)行編碼再替換變量值即可。
5、為什么微信小程序提交post請求服務(wù)器獲取不到參數(shù)???
檢查數(shù)據(jù)類型,檢查url,檢查后臺轉(zhuǎn)載請帶上網(wǎng)址:http://yadikedp.com/posjitwo/117512.html