欧美日韩精品一区二区在线线,一级无码在线收看,精品国产高清91,久久精品欧美电影

# 手機號快速驗證組件

該能力旨在幫助開發(fā)者向用戶發(fā)起手機號申請,并且必須經(jīng)過用戶同意后,開發(fā)者才可獲得由平臺驗證后的手機號,進而為用戶提供相應(yīng)服務(wù)。

以下是舊版本組件使用指南,注意使用舊版本組件時,需先調(diào)用wx.login接口。建議開發(fā)者使用新版本組件,以增強小程序安全性。詳情新版組件使用指南。

因為需要用戶主動觸發(fā)才能發(fā)起手機號快速驗證,所以該功能不由 API 來調(diào)用,需用 button 組件的點擊來觸發(fā)。

注意

  • 1. 目前該接口針對非個人開發(fā)者,且完成了認證的小程序開放(不包含海外主體)。需謹慎使用,若用戶舉報較多或被發(fā)現(xiàn)在不必要場景下使用,微信有權(quán)永久回收該小程序的該接口權(quán)限。
  • 2. 該能力使用時,用戶可選擇綁定號碼,或自主添加號碼。平臺會對號碼進行驗證,但不保證是實時驗證;
  • 3. 請開發(fā)者根據(jù)業(yè)務(wù)場景需要自行判斷并選擇是否使用,必要時可考慮增加其他安全驗證手段。

# 使用方法

需要將 button 組件 open-type 的值設(shè)置為 getPhoneNumber,當用戶點擊并同意之后,可以通過 bindgetphonenumber 事件回調(diào)獲取到微信服務(wù)器返回的加密數(shù)據(jù), 然后在第三方服務(wù)端結(jié)合 session_key 以及 app_id 進行解密獲取手機號。

# 注意事項

在回調(diào)中調(diào)用 wx.login 登錄,可能會刷新登錄態(tài)。此時服務(wù)器使用 code 換取的 sessionKey 不是加密時使用的 sessionKey,導(dǎo)致解密失敗。建議開發(fā)者提前進行 login;或者在回調(diào)中先使用 checkSession 進行登錄態(tài)檢查,避免 login 刷新登錄態(tài)。

# 代碼示例

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
Page({
  getPhoneNumber (e) {
    console.log(e.detail.errMsg)
    console.log(e.detail.iv)
    console.log(e.detail.encryptedData)
  }
})

# 返回參數(shù)說明

參數(shù) 類型 說明 最低版本
encryptedData String 包括敏感數(shù)據(jù)在內(nèi)的完整用戶信息的加密數(shù)據(jù),詳細見加密數(shù)據(jù)解密算法
iv String 加密算法的初始向量,詳細見加密數(shù)據(jù)解密算法
cloudID string 敏感數(shù)據(jù)對應(yīng)的云 ID,開通云開發(fā)的小程序才會返回,可通過云調(diào)用直接獲取開放數(shù)據(jù),詳細見云調(diào)用直接獲取開放數(shù)據(jù) 基礎(chǔ)庫 2.8.0

獲取得到的開放數(shù)據(jù)為以下 json 結(jié)構(gòu):

{
    "phoneNumber": "13580006666",
    "purePhoneNumber": "13580006666",
    "countryCode": "86",
    "watermark":
    {
        "appid":"APPID",
        "timestamp": TIMESTAMP
    }
}
參數(shù) 類型 說明
phoneNumber String 用戶綁定的手機號(國外手機號會有區(qū)號)
purePhoneNumber String 沒有區(qū)號的手機號
countryCode String 區(qū)號