1. 程式人生 > >微信小程式之wx.request:fail錯誤,真機預覽請求無效問題解決,安卓,ios網路預覽異常

微信小程式之wx.request:fail錯誤,真機預覽請求無效問題解決,安卓,ios網路預覽異常

問題描述:域名已經備案,我全部都有,也在後臺配置了,但是手機預覽,還是請求失敗, PC端是可以請求資料出來的 
新版開發者工具增加了https檢查功能;可使用此功能直接檢查排查ssl協議版本問題:

可能原因:0:後臺域名沒有配置
0.1:域名不支援https
1:沒有重啟工具;
2:域名沒有備案,或是備案後不足24小時;備案未生效;感謝@小樹提供的案例
3:ssl協議有問題:具體請參考本文:
解決方法
1、Geotrust先檢查下你的站點。把一些常規的問題解決掉,比如中級證書沒裝,等等問題。
2、微信支援,且只支援ssl_protocols TLSv1.2及以上版本;所以,你需要把SSL V2,SSL V3這些協議都刪掉
3、加密方式ssl_ciphers AES128+EECDH:AES128+EDH:!aNULL;
@奔跑的拖鞋同學分享
小程式需要TLS 版本支援1.2及以下版本
windows系統至少要2008R2以上,才能支援1.0 1.1  1.2 
少一個版本不支援都不行
所以03系統想折騰小程式的朋友,自己裝R2以上或用linux系統 

免費的證書可以到startssl.com,或阿里雲
建議到阿里雲。。。 

4:參考這個連結:

(1)證書受信任的問題
部分國內簽發的SSL證書,在Android上不受信任,推薦GeoTrust;
(2)如果頁面有動靜分離,靜態資源使用獨立域名的話,也需要為該域名申請證書;
(3)android低版本不支援SNI擴充套件,受此限制,一臺伺服器只能部署一個數字證書;

如果有其他可能性,請在本帖內回覆以給其他同學參考;如果以上不能解決你的問題,也請回覆在底下

6:同時測試ios和安卓,假如有一方可以,一方不行,則是證書問題,請選用受認可的證書     
檢測地址:https://www.qcloud.com/product/ssl.html#userDefined10

配置指引地址:https://www.qcloud.com/doc/product/400/6973

7:

8:@”沉淪自己“的案例:證書是賽門鐵克的, 少了一份證書,配置的證書不是小程式https地址的證書,然後配置了一箇中級證書,就ok了

9:可以請求資料,真機預覽無法請求伺服器資料:感謝@Zero 同學提供的此解決方案
      檢測地址:
https://www.myssl.cn/tools/check-server-cert.html



10:https埠使用8443時無法訪問,需改成443

11:

12:
Q:微信小程式在模擬器上https能訪問到資料,但是真機上不能建立資料連線。
A: a)證書要認證機構頒發的。
 
    b)如果是Android不行看看request的請求method請求型別要用大寫,如GET。
    c)伺服器要支援tls 1.0 1.1 1.2。
 Q:wx.request發請求,報"ssl hand shake erro"。
A:以下三點要確認沒有問題
   (1) tls需要支援1.0 1.1. 1.2版本。
    (2) wx.request 請求引數method的value要大寫(例如:GET)。
    (3) 下載最新的微信客戶端
   如果用的是騰訊雲提供的免費證書。騰訊雲下載證書zip檔案,解壓後務必使用nginx目錄中的root crt 和 key兩個檔案。