中文源码网
欢迎您!
会员登录
会员注册
发布自媒体
发布模版
发布源码
发布模版
发布酷站
推荐源码
常用源码
帮助中心
栏目导航
热门搜索:
网站首页
免费源码
精品源码
html模版
精品模版
酷站大全
技术文档
方案大全
网络教程
站长自媒体
新闻动态
帮助中心
免费源码下载
asp源码
php源码
python源码
.net源码
jsp源码
JS特效
安卓源码
IOS源码
微信小程序下载
毕业设计源码下载
模版下载
商城模版
手机wap模版
网络教程
html5教程
asp教程
php教程
jsp教程
Python语言技术文档
python入门
Python编程技巧
Python网站web
Python网络爬虫
Python自动化运维
数据挖掘/机器学习
Python人工智能
Python多媒体
Python科学计算
Python游戏开发
Python图形界面
Python数据库相关
Python与其他语言
Python库/模块大全
Python报错处理大全
微信小程序技术文档
微信小程序开发入门
微信小程序开发技巧
微信游戏开发
微信公众号开发
微信常用源码
php语言技术文档
php入门教程
php技巧
php函数/类库
php框架
php+AJAX技巧
开源系统及二次开发
PHP内核
jsp语言技术文档
jsp入门教程
jsp技巧
jsp框架
asp语言技术文档
asp入门教程
asp技巧
asp函数/类库
C#/.NET语言技术文档
C#/.NET入门教程
C#/.NET技巧
MVC/.NET框架
C#/.NET微信开发
程序报错解决方法
html5/css技术文档
html5
CSS
javascript
javascript技巧
jquery
json
ajax
js框架/js库
点击排行
总结PHP中初始化空数组的最佳方法
在PHP中输出JS语句以及乱码问题的解决方案
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
用PHP的反射实现委托模式的讲解
详解提高使用Java反射的效率方法
详解关于php的xdebug配置(编辑器vscode)
详解php中生成标准uuid(guid)的方法
详解php中curl返回false的解决办法
详解php用static方法的原因
详解php伪造Referer请求反盗链资源
详解PHP素材图片上传、下载功能
详解PHP实现支付宝小程序用户授权的工具类
详解PHP神奇又有用的Trait
详解PHP队列的实现
详解PHP的抽象类和抽象方法以及接口总结
您现在的位置:
首页
>
技术文档
>
Python与其他语言
我要投稿
python获取微信小程序手机号并绑定遇到的坑
来源:
中文源码网
浏览:456 次 日期:2024-04-24 12:46:59
【下载文档:
python获取微信小程序手机号并绑定遇到的坑.txt
】
python获取微信小程序手机号并绑定遇到的坑
最近在做小程序开发,在其中也遇到了很多的坑,获取小程序的手机号并绑定就遇到了一个很傻的坑。
流程介绍
官方流程图
小程序使用方法
需要将
组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 bindgetphonenumber 事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端结合 session_key 以及 app_id 进行解密获取手机号。
返回参数说明
参数
类型
说明
encryptedData
String
包括敏感数据在内的完整用户信息的加密数据,详细见加密数据解密算法
iv
String
加密算法的初始向量,详细见加密数据解密算法
接受到这些参数以后小程序把code,encryptedData,iv发给后台,然后后台解密
后台解密
在解密以前需要session_key进行配合解密,所以首先通过code获取session_key
# 获取openid,session_key
# Appid为小程序id
openid_url = "http://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实现代码如下:
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)
参数详情参照微信官方文档http://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/signature.html
微信官方提供了多种编程语言的示例代码点击下载
返回数据格式
{
"phoneNumber": "13580006666",
"purePhoneNumber": "13580006666",
"countryCode": "86",
"watermark":
{
"appid":"APPID",
"timestamp":TIMESTAMP
}
}
总结
以上所述是小编给大家介绍的python获取微信小程序手机号并绑定遇到的坑,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对中文源码网网站的支持!
上一篇:
Python基于opencv调用摄像头获取个人图片的实现方法
下一篇:
python获取微信企业号打卡数据并生成windows计划任务
相关内容
•
在VS2017中用C#调用python脚本的实现
•
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
•
在python中实现调用可执行文件.exe的3种方法
•
在Python中将函数作为另一个函数的参数传入并调用的方法
•
在Python中调用Ping命令,批量IP的方法
•
在Python中COM口的调用方法
•
在Python 中同一个类两个函数间变量的调用方法
•
在Python 不同级目录之间模块的调用方法
•
在PYQT5中QscrollArea(滚动条)的使用方法
•
在pyqt5中QLineEdit里面的内容回车发送的实例
•
用python生成与调用cntk模型代码演示方法
•
用Python调用win命令行提高工作效率的实例
•
详解python调用cmd命令三种方法
•
详解Python 调用C# dll库最简方法
•
详解Python logging调用Logger.info方法的处理过程
•
微信公众号token验证失败解决方案
•
通过shell+python实现企业微信预警
•
使用Python实现微信提醒备忘录功能
•
使用python来调用CAN通讯的DLL实现方法
•
使用python分析统计自己微信朋友的信息
•
使用python3调用wxpy模块监控linux日志并定时发送消息给群组或好友
•
使用Python+wxpy 找出微信里把你删除的好友实例
•
使用PyQt4 设置TextEdit背景的方法
•
如何利用Python分析出微信朋友男女统计图
•
如何不用安装python就能在.NET里调用Python库
•
浅析Windows 嵌入python解释器的过程
•
浅谈Python中函数的定义及其调用方法
•
浅谈python函数调用返回两个或多个变量的方法
•
浅谈pyqt5中信号与槽的认识
•
浅谈PyQt5 的帮助文档查找方法,可以查看每个类的方法
•
判断python对象是否可调用的三种方式及其区别详解
•
局域网内python socket实现windows与linux间的消息传送
•
解决Python设置函数调用超时,进程卡住的问题
•
解决Python3 被PHP程序调用执行返回乱码的问题
•
解决python super()调用多重继承函数的问题
•
基于wxPython的GUI实现输入对话框(2)
•
基于wxPython的GUI实现输入对话框(1)
•
基于python实现的百度音乐下载器python pyqt改进版(附代码)
•
基于python 微信小程序之获取已存在模板消息列表
•
基于PyQt4和PySide实现输入对话框效果
•
关于python之字典的嵌套,递归调用方法
•
对YOLOv3模型调用时候的python接口详解
•
对python中不同模块(函数、类、变量)的调用详解
•
对python调用RPC接口的实例详解
•
对python 调用类属性的方法详解
•
对Python Class之间函数的调用关系详解
•
Windows系统Python直接调用C++ DLL的方法
•
python抓取需要扫微信登陆页面
•
Python抓取微信公众号账号信息的方法
•
python抓取搜狗微信公众号文章
•
python中使用ctypes调用so传参设置遇到的问题及解决方法
•
Python中函数的基本定义与调用及内置函数详解
•
python中多个装饰器的调用顺序详解
•
Python中调用其他程序的方式详解
•
Python中PyQt5点击主窗口弹出另一个窗口的实现方法
•
Python制作微信好友背景墙教程(附完整代码)
•
python之线程通过信号pyqtSignal刷新ui的方法
•
python之PyQt按钮右键菜单功能的实现代码
•
python之pyqt5通过按钮改变Label的背景颜色方法
•
Python找出微信上删除你好友的人脚本写法
•
python在某.py文件中调用其他.py内的函数的方法
•
python远程调用rpc模块xmlrpclib的方法
•
python下载微信公众号相关文章
•
Python微信之获取好友昵称并制作wordcloud的实例
•
python微信撤回监测代码
•
Python微信操控itchat的方法
•
python同步windows和linux文件
•
Python通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
•
Python通过调用接口获取公交信息的实例
•
Python通过paramiko远程下载Linux服务器上的文件实例
•
Python提取支付宝和微信支付二维码的示例代码
•
python使用wxpy实现微信消息防撤回脚本
•
python使用wxpy轻松实现微信防撤回的方法
•
python使用suds调用webservice接口的方法
•
Python使用paramiko操作linux的方法讲解
•
Python使用itchat 功能分析微信好友性别和位置
•
Python使用ctypes调用C_C++的方法
•
Python实现异步调用函数的示例讲解
•
python实现文件助手中查看微信撤回消息
•
Python实现微信小程序支付功能
•
Python实现微信消息防撤回功能的实例代码
•
python实现微信防撤回神器
•
Python实现微信防撤回功能
•
python实现微信定时每天和女友发送消息
•
Python实现还原已撤回的微信消息
•
python实现给微信指定好友定时发送消息
•
Python实现的微信支付方式总结【三种方式】
•
Python实现的微信红包提醒功能示例
•
Python实现的调用C语言函数功能简单实例
•
Python实现Linux监控的方法
•
python如何实现异步调用函数执行
•
Python如何调用外部系统命令
•
Python如何调用JS文件中的函数
•
python如何查看微信消息撤回
•
python判断linux进程,并杀死进程的实现方法
•
Python面向对象实现一个对象调用另一个对象操作示例
•
python接口实现供第三方调用的例子
•
python接口调用已训练好的caffe模型测试分类方法
•
python脚本当作Linux中的服务启动实现方法
•
Python基于opencv调用摄像头获取个人图片的实现方法
•
python获取微信小程序手机号并绑定遇到的坑
•
python获取微信企业号打卡数据并生成windows计划任务
•
python获取毫秒数,计算调用时长的方法
•
python获取地震信息 微信实时推送
•
python获取Linux发行版名称
•
python和c语言的主要区别总结
•
python给微信好友定时推送消息的示例
•
Python父目录、子目录的相互调用方法
•
python多线程调用exit无法退出的解决方法
•
python读取Linux服务器上的文件方法
•
python调用自定义函数的实例操作
•
python调用支付宝支付接口流程
•
python调用有道api接口的方法
•
python调用外部程序的实操步骤
•
python调用摄像头拍摄数据集
•
python调用其他文件函数或类的示例
•
python调用虹软2.0第三版的具体使用
•
Python调用服务接口的实例
•
python调用动态链接库的基本过程详解
•
python调用并链接MATLAB脚本详解
QQ客服
公众号
手机版
帮助中心