微信小程序:手機號碼解析失敗解決方案

在小程序開發中,獲取用戶信息,獲取手機號基本是必須用到的功能

但是有時可能會遇到“手機號解析失敗”的問題,這個時候我們檢查下代碼是否是在獲取手機號的回調中才調用的wx.login的方法,如果是這樣,這一點官方文檔是有說明的,如下:

所有解決辦法是提前調wx.login,在獲取手機號的回調方法中取檢驗登錄狀態,代碼如下:

onLoad: function (options) {
    wx.login({
      success: res => {
        that.setData({
          code: res.code
        })
      }
    })//先登錄在獲取手機號
  },
  getPhoneNumber(e) {
    let encryptedData = e.detail.encryptedData
    let iv = e.detail.iv
    wx.checkSession({
      success() {
        //session_key 未過期,並且在本生命週期一直有效
      },
      fail() {
        // session_key 已經失效,需要重新執行登錄流程
        wx.login({
          success: res => {
            code = res.code
            that.setData({
              code: code
            })
          }
        })
      },
      complete() {
        //將code,encryptedData,iv傳給後臺進行解密
      }
    })
  }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章