關於ios配置微信config出現驗簽失敗的問題解決


在開發中,出現了一個關於微信配置的問題。

使用的開發工具以及開發框架為 uniapp , JSSDK為  jweixin

使用uniapp進行公眾號開發,需要在進入某個頁面時候進行微信配置來達到更改分享信息的效果。

 

問題描述:

  請求后台獲取了微信配置參數並配置了微信參數后

  在ios手機上顯示驗簽失敗,功能無法使用。

  在微信開發者工具、安卓端驗簽成功,功能正常。

  經測試,ios端刷新頁面后,驗簽即正常,所以,配置參數沒有問題。

 

 

解決方案:

1.(不推薦)

  通過jweixin.error監聽失敗事件,如果有失敗,則刷新頁面。

  雖然一般刷新一次就可以配置成功,但仍需要需要控制刷新次數 ,避免不斷刷新 ,我是通過加url參數的形式 ,如果location.search中不存在retry,則進行刷新。

 

錯誤監聽示例代碼:

if( err ){
        let search = location.search;
        if(  search ){
            if(  !search.includes('&retry')  && !search.includes('?retry')  ){
                location.href += '&retry=1'
            }
        }else{
            location.href +='?retry=1'
        }
    }

 

2.(推薦)

  通過測試發現,發生該錯誤的原因為,通過uniapp的api uni.navigateTo  跳轉到頁面時,ios獲取到的location.href是錯誤的地址(雖然打印出來沒錯),

  所以導致驗簽失敗。而方法一執行刷新后之所以可以,因為是使用location來進行跳轉。

  解決方案: 將跳轉進入頁面的跳轉代碼 由 uni.navigateTo 改成  location.href = 頁面名。

 


免責聲明!

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



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