小程序開發(fā)過程中常見的問題及優(yōu)化方法介紹
相比APP開發(fā),小程序開發(fā)門檻低,成本低,但是小程序開發(fā)過程中還是會遇到一些問題。對于小程序開發(fā)過程中可能遇到的問題和解決方法,全通網(wǎng)絡(luò)梳理了一下
1.網(wǎng)絡(luò)請求接口域名的限制解決
小程序對網(wǎng)絡(luò)請求接口域名有明確要求。針對4種服務(wù)器域名(request、socket、uploadfile、downloadfile)每種只能指定一個合法域名。這樣,對于后臺業(yè)務(wù)十分復雜,并使用不同域名對業(yè)務(wù)進行劃分的應(yīng)用就會有問題,比如騰訊的自選股,后臺就十分復雜。應(yīng)對這個限制,騰訊自選股最終通過統(tǒng)一代理方式將多個域名收斂為一個域名,由代理層將請求轉(zhuǎn)發(fā)。
2.應(yīng)用內(nèi)部支持https請求
微信小程序文檔中要求wx.request網(wǎng)絡(luò)請求發(fā)起的是HTTPS請求,這對于有各種接口的應(yīng)用也帶來影響。仍以騰訊自選股為例,通過在統(tǒng)一代理層部署證書支持HTTPS請求,這樣后端RS機器無需改動,成功解決必須是HTTPS請求的問題。
iOS規(guī)則自2017.1開始服務(wù)器會只支持HTTPS協(xié)議的接口,所以,現(xiàn)在開始盡量統(tǒng)一為HTTPS。
3.小程序僅支持5個并發(fā)的網(wǎng)絡(luò)請求
微信小程序官方文檔中也提到了,同時打開頁面有5個的限制。所以不適合做太深層級頁面的交互應(yīng)用。像騰訊自選股這類深層級頁面交互的應(yīng)用,可以使用動態(tài)接口將頁面需要的數(shù)據(jù)進行合并,通過一個接口獲取頁面所需數(shù)據(jù)。
4.多個頁面代碼共用問題
小程序頁面與頁面之間代碼復用性差。當多個頁面共用一個js或者json的時候(比如詳情頁面),需要打包和構(gòu)建工具的支持(如用webpack)。沒有工具就只能自己手工復制,一旦涉及修改的時候,要修改多個頁面就比較麻煩了。
5.關(guān)于有狀態(tài)的登錄問題
關(guān)于登錄,目前小程序不支持cookie,而是采用前端利用微信提供的接口獲取登錄憑證code,server端再用code獲取密鑰session_key的方式對用戶數(shù)據(jù)完成加密解密,整個過程需要server端對已有的登錄體系進行再次封裝,而本地的登錄態(tài)可以利用微信提供的本地存儲進行保存。
以上是一些小程序開發(fā)中會遇到的部分問題和相應(yīng)的解決方案,對于小白們有一定的幫助。可想而知未來小程序開發(fā)不再是個小眾話題,微信小程序的巨大能量,將會引來更多人加入這場紛爭。只有爭得先機者,才能笑到最后。
百度口碑
100%好評
360安全認證
安全可信賴
公安機關(guān)
公網(wǎng)備案