最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python獲取微信小程序手機號并綁定遇到的坑

 更新時間:2018年11月19日 16:00:14   作者:如何好聽  
這篇文章主要介紹了python獲取微信小程序手機號并綁定遇到的坑,本文給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下

最近在做小程序開發(fā),在其中也遇到了很多的坑,獲取小程序的手機號并綁定就遇到了一個很傻的坑。

流程介紹

官方流程圖

小程序使用方法

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

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"> </button>

返回參數(shù)說明

參數(shù) 類型 說明
encryptedData String 包括敏感數(shù)據(jù)在內的完整用戶信息的加密數(shù)據(jù),詳細見加密數(shù)據(jù)解密算法
iv String 加密算法的初始向量,詳細見加密數(shù)據(jù)解密算法

接受到這些參數(shù)以后小程序把code,encryptedData,iv發(fā)給后臺,然后后臺解密

后臺解密

在解密以前需要session_key進行配合解密,所以首先通過code獲取session_key

 # 獲取openid,session_key
 # Appid為小程序id
  openid_url = "https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code" % (
    APP_ID, APP_KEY, code
  )
  req = requests.get(openid_url)
  rep = req.json()
  session_key = rep.get("session_key")

在得到session_key,encryptedData,iv以后就可以進行解密了,python2實現(xiàn)代碼如下:

 import base64
 import json
 from Crypto.Cipher import AES
 class WXBizDataCrypt:
   def __init__(self, appId, sessionKey):
     self.appId = appId
     self.sessionKey = sessionKey
   def decrypt(self, encryptedData, iv):
     # base64 decode
     sessionKey = base64.b64decode(self.sessionKey)
     encryptedData = base64.b64decode(encryptedData)
     iv = base64.b64decode(iv)
     cipher = AES.new(sessionKey, AES.MODE_CBC, iv)
     decrypted = json.loads(self._unpad(cipher.decrypt(encryptedData)))
     if decrypted['watermark']['appid'] != self.appId:
       raise Exception('Invalid Buffer')
     return decrypted
   def _unpad(self, s):
     return s[:-ord(s[len(s)-1:])]

調用傳參

# APP_ID為小程序id不是openid!??!
pc = wx_jm(APP_ID, session_key)
res = pc.decrypt(encryptedData, iv)

參數(shù)詳情參照微信官方文檔https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/signature.html

微信官方提供了多種編程語言的示例代碼點擊下載

返回數(shù)據(jù)格式

{
  "phoneNumber": "13580006666", 
  "purePhoneNumber": "13580006666", 
  "countryCode": "86",
  "watermark":
  {
    "appid":"APPID",
    "timestamp":TIMESTAMP
  }
}

總結

以上所述是小編給大家介紹的python獲取微信小程序手機號并綁定遇到的坑,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • Pytorch使用VGG16模型進行預測貓狗二分類實戰(zhàn)

    Pytorch使用VGG16模型進行預測貓狗二分類實戰(zhàn)

    VGG16是Visual Geometry Group的縮寫,它的名字來源于提出該網(wǎng)絡的實驗室,本文我們將使用PyTorch來實現(xiàn)VGG16網(wǎng)絡,用于貓狗預測的二分類任務,我們將對VGG16的網(wǎng)絡結構進行適當?shù)男薷?以適應我們的任務,需要的朋友可以參考下
    2023-08-08
  • python?字符串常用方法超詳細梳理總結

    python?字符串常用方法超詳細梳理總結

    字符串是Python中基本的數(shù)據(jù)類型,幾乎在每個Python程序中都會使用到它。本文為大家總結了Python中必備的31個字符串方法,需要的可以參考一下
    2022-03-03
  • Python使用Tabulate庫實現(xiàn)格式化表格數(shù)據(jù)

    Python使用Tabulate庫實現(xiàn)格式化表格數(shù)據(jù)

    在數(shù)據(jù)分析和軟件開發(fā)中,表格數(shù)據(jù)的展示是一個常見的需求,無論是簡單的數(shù)據(jù)報告,還是復雜的數(shù)據(jù)可視化,表格都是一種直觀且有效的信息展示方式,tabulate庫是一個非常實用的工具,它可以幫助我們輕松地將數(shù)據(jù)格式化為各種表格形式,本文將詳細介紹tabulate庫的使用方法
    2025-02-02
  • python 圖片二值化處理(處理后為純黑白的圖片)

    python 圖片二值化處理(處理后為純黑白的圖片)

    這篇文章主要介紹了python 圖片二值化處理(處理后為純黑白的圖片),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • python 自動批量打開網(wǎng)頁的示例

    python 自動批量打開網(wǎng)頁的示例

    今天小編就為大家分享一篇python 自動批量打開網(wǎng)頁的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python實現(xiàn)媒體播放器功能

    python實現(xiàn)媒體播放器功能

    這篇文章主要為大家詳細介紹了python實現(xiàn)媒體播放器功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Python類中__init__()?和self的詳細解析

    Python類中__init__()?和self的詳細解析

    self和__init__的語法學過Python的都清楚,但是靠死記硬背來迫使自己理解并不是個好辦法,下面這篇文章主要給大家介紹了關于Python類中__init__()?和self的相關資料,需要的朋友可以參考下
    2022-12-12
  • 將python圖片轉為二進制文本的實例

    將python圖片轉為二進制文本的實例

    今天小編就為大家分享一篇將python圖片轉為二進制文本的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python實現(xiàn)讀取并寫入Excel文件過程解析

    Python實現(xiàn)讀取并寫入Excel文件過程解析

    這篇文章主要介紹了Python實現(xiàn)讀取并寫入Excel文件過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • python 實現(xiàn)在無序數(shù)組中找到中位數(shù)方法

    python 實現(xiàn)在無序數(shù)組中找到中位數(shù)方法

    這篇文章主要介紹了python 實現(xiàn)在無序數(shù)組中找到中位數(shù)方法,具有很好對參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03

最新評論

克什克腾旗| 扶沟县| 闽侯县| 安图县| 齐齐哈尔市| 平乐县| 绥宁县| 彩票| 应用必备| 嘉义市| 宝清县| 天门市| 宣汉县| 布尔津县| 壶关县| 巴东县| 永兴县| 冷水江市| 临朐县| 淮北市| 海南省| 淮南市| 平乡县| 吉木乃县| 澄江县| 宜良县| 威信县| 驻马店市| 蕲春县| 通榆县| 民勤县| 枣庄市| 永吉县| 萨嘎县| 延吉市| 山阴县| 封开县| 建德市| 舞钢市| 宁蒗| 五峰|