java如何获取手机号码_微信小程序+Java获取用户授权手机号码

本文介绍了如何在Java服务端解密微信小程序获取到的加密手机号码。首先,小程序中使用button组件获取用户授权的手机号码和加密数据,然后通过wx.login获取code。在服务端,使用code换取session_key,并利用WXBizDataCrypt类解密encryptedData和iv,得到手机号码。
摘要由CSDN通过智能技术生成

前言

小程序内可以直接通过授权获取用户微信号绑定的手机号码或用户添加的其他手机号码,这样可以使得小程序在进行账户的身份可控上又提高了一步,那么应该如何来获取手机号码呢?这篇文章就和大家一起来研究一下。

/>

前提

值得注意的是,如果您要获取手机号码首先要满足如下要求:

注意:目前该接口针对非个人开发者,且完成了认证的小程序开放(不包含海外主体)。需谨慎使用,若用户举报较多或被发现在不必要场景下使用,微信有权永久回收该小程序的该接口权限。 – 微信开发平台

正文

获取授权信息

首先,我们需要使用button组件,其open-type的值要设置为getPhoneNumber,可参考button · 小程序,然后绑定bindgetphonenumber的回调函数,在用户点击按钮,弹起的授权框允许授权之后回调函数内会返回一个event的对象,在其对象的detail下分别存在两个值(可参考《获取手机号 · 小程序》):

参数

类型

说明

encryptedData

String

包括敏感数据在内的完整用户信息的加密数据

iv

String

加密算法的初始向量

接下来我们要模拟一次登录,调用wx.login,然后再授权成功的回调中获取授权code值,接着将上述的encryptedData与iv一并传送至服务端,接下来就开始进行服务端解密过程。

服务端解密

服务端接收到encryptedData、iv与code值之后,进

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值