微信小程序授權登錄 -41003: aes 加密數據解密失敗問題


在微信小程的開發中,登錄問題,一定要按照這樣的順序:

1.小程序請求login,拿到code 然后傳給服務端

2.服務端拿到code 到微信服務器拿到sessionKey

3.然后小程序調用getuserinfo接口拿到encryptedData,iv,然后給服務端

4.服務端拿到客戶端的encryptedData,vi還有之前的sessionKey去解密得到 unionId等用戶信息

注意:客戶端上傳的encryptedData需要encodeURIComponent方法進行URL編碼,對應服務端需要URL解碼
小程序:

encodeURIComponent(data.encryptedData);//一定要把加密串轉成URL編碼

服務端:

<?php
//php 端接受數據 時做url解碼
$encryptedData=urldecode($_GET["encryptedData"]);

不然就會出現你這樣的問題,你這種情況偶然出現的原因就是 你在服務端還未去獲取sessionKey的時候你就去調用了getuserinfo,有時候你會比服務端快,有時候你會比服務端慢,所以就出現了偶然性

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM