在用户同意授权获取手机号后,前端会获取到一段加密的数据,必须要解密后才可以拿到我们想要的手机号信息,第一次弄的时候在这里耽误了些时间所以记录一下。
首先第一步:微信授权登录
在授权登录后,PHP端会根据前端提供的CODE获取到一个数组,保存session_key和openid,这两个参数非常重要,
可以直接保存数据库或者返回给前端,具体实现根据业务调整
注意:session_key会过期,如果保存数据库,最好每次授权登录都重新更新一下session_key)
第二步:小程序授权获取手机号
小程序调用微信getPhoneNumber函数,获取到信息加密字符串等数据(encryptedData,iv),将拿到的数据传送给服务器即可。
切记,如果服务器没有保存session_key参数的话,前端在授权登录成功后让后台提供该参数,并同encryptedData,iv两个参数一起在传给后端,下面是js代码示例(我们的session_key参数是登录成功时,直接保存在用户信息里面了,所以js接口没有传)