VPS参考测评推荐
专注分享VPS主机优惠信息
衡天云优惠活动
华纳云优惠活动
荫云优惠活动

小程序开发实践解析:如何获取手机号码

主机参考:VPS测评参考推荐/专注分享VPS服务器优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情!
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作

小程序如何获取用户的手机号?下面这篇文章给大家介绍一下微信小程序开发中获取用户手机号的方法,希望对你有所帮助!

小程序开发实践解析:如何获取手机号码

1.后台平时使用第三方微信小程序时,往往需要获取微信手机号,如下图所示:

1.png

【相关学习推荐:小程序开发教程】

这是如何实现的?下面记录一下如何获取微信手机号。

* *备注:* *你需要有一个微信小程序号,这个号是企业认证的。(获取手机号功能对个人小程序号不生效)

那我们就一起开始获取手机号的编程之旅吧。

2、代码实现2.1新项目

添加“至app.json文件页面/getphonenumber/getphonenumber ;,如下图所示:

2.png

2.2准备密文分析工具类

手机号是通过微信小程序提供的接口获取的,返回的数据是加密的,所以需要对返回的加密数据进行解密。

1)新终端

在微信开发者工具中,点击"终端" -"新建终端"如下图所示:

3.png

2)执行npm初始化指令

//执行npm init后,需要输入一些信息,一直点击“回车”即可。

如下图所示:

4.png

3)依次执行npm安装crypto-js --save,npm安装js-base64 --save

如下图所示:

5.png

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

有关编程的更多信息,请访问:编程视频!!以上是对小程序开发实践的简要分析。更多详情请关注主机参考其他相关文章!

这几篇文章你可能也喜欢:

本文由主机参考刊发,转载请注明:小程序开发实践解析:如何获取手机号码 https://zhujicankao.com/76237.html

【腾讯云】领8888元采购礼包,抢爆款云服务器 每月 9元起,个人开发者加享折上折!
打赏
转载请注明原文链接:主机参考 » 小程序开发实践解析:如何获取手机号码
主机参考仅做资料收集,不对商家任何信息及交易做信用担保,购买前请注意风险,有交易纠纷请自行解决!请查阅:特别声明

评论 抢沙发

评论前必须登录!