主机参考:VPS测评参考推荐/专注分享VPS服务器优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情! |
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作 |
小程序如何获取用户的手机号?下面这篇文章给大家介绍一下微信小程序开发中获取用户手机号的方法,希望对你有所帮助!
1.后台平时使用第三方微信小程序时,往往需要获取微信手机号,如下图所示:
【相关学习推荐:小程序开发教程】
这是如何实现的?下面记录一下如何获取微信手机号。
* *备注:* *你需要有一个微信小程序号,这个号是企业认证的。(获取手机号功能对个人小程序号不生效)
那我们就一起开始获取手机号的编程之旅吧。
2、代码实现2.1新项目
添加“至app.json文件页面/getphonenumber/getphonenumber ;,如下图所示:
2.2准备密文分析工具类
手机号是通过微信小程序提供的接口获取的,返回的数据是加密的,所以需要对返回的加密数据进行解密。
1)新终端
在微信开发者工具中,点击"终端" -"新建终端"如下图所示:
2)执行npm初始化指令
//执行npm init后,需要输入一些信息,一直点击“回车”即可。
如下图所示:
3)依次执行npm安装crypto-js --save,npm安装js-base64 --save
如下图所示:
4)建立国家预防机制
在微信开发工具的菜单栏中选择“工具”-和“构建npm”完成构建。
2.3解析类实现
在项目的utils文件夹下新建一个WXBizDataCrypt.js文件,代码实现如下:
var CryptoJS = require( ;crypto -js ;);var base 64 = require( ;js-base64 ;);//解析加密数据functiondecode (sessionkey,iv,data){ var key = cryptojs . enc . base64 . parse(session key);var iv = cryptojs . enc . base64 . parse(iv);var decrypt = CryptoJS。AES.decrypt(data,key,{ iv: iv,mode: CryptoJS.mode.CBC,padding:cryptojs . pad . pkcs 7 });返回base64 . decode(cryptojs . enc . base64 . stringify(decrypt));}module.exports = {decode}2.4获取手机号码代码的实现
2 . 4 . 1 getphonenumber . js的实现
注意:appId和secret需要用自己的小程序替换。
//pages/getphonenumber/getphonenumber . jsconst WXBizDataCrypt = require( # 39;../../utils/WXBizDataCrypt # 39;);Page({ /** *页面的初始数据*/data:{ phoneNum: # 39;',session key: # 39;',openId: # 39;'},/* * *生命周期函数--监听页面加载*/onload:function(options){ this . getsession key();},getPhoneNumber:function(e){ if(e . detail . errmsg = = ;getPhoneNumber:拒绝用户失败 ){ wx . show toast({ title: # 39;授权被拒绝,无法获取用户手机号!',})返回;}//解密数据得到手机号this . Decrypt data(this . data . session key,e.detail.iv,e . detail . encrypted data);},//get session key getsession key:function(){ wx . log in({ success:RES = >;{ console . log( # 39;代码: # 39;+RES . code);var数据= { # 39;appid # 39:'***********',//注意appId和secret需要用自己的applet替换 # 39;秘密 # 39;:'**************************', 'js _ code # 39:res.code, # 39;grant _ type # 39:'授权_代码 # 39;};wx . request({ URL: # 39;https://api.weixin.qq.com/sns/jscode2session',数据:数据,方法: # 39;获取 # 39;,success:RES = gt;{ console . log( ;jscode 2会话结果:,RES);this . setdata({ session key:RES . data . session _ key,openId: res.data.openId }) },fail:function(RES){ console . log( ;获取jscodeSession失败: ",RES);}}}}}},//解密数据:function (key,IV,加密数据){ var process data = wxbizdatacrypt . decode(key,IV,加密数据);控制台. log( ;解密数据:“,process data);var JSON obj = JSON . parse(process data);this.setData({ phoneNum: jsonObj
有关编程的更多信息,请访问:编程视频!!以上是对小程序开发实践的简要分析。更多详情请关注主机参考其他相关文章!
这几篇文章你可能也喜欢:
- 猫头鹰云:香港沙田/cera、洛杉矶、美国/OVH、加拿大/高防高级网络服务器、CN2 GIA 高级网络回报,3.99 美元/月起
- Internetport 瑞典专用服务器:忽略 DMCA/允许视频网站/成人网站,1Gbps 带宽无限流量,49 欧元/月
- 没有微信发现页管理小程序怎么办(没有微信发现页管理小程序怎么办?)
- 微信小程序页面之间传输数据的一些方法(微信小程序页面之间传输数据的一些方法)
- 恢复指定人的微信聊天记录(不用电脑恢复指定人的微信聊天记录)
本文由主机参考刊发,转载请注明:小程序开发实践解析:如何获取手机号码 https://zhujicankao.com/76237.html
评论前必须登录!
注册