微信小程序获取手机号第一次失败,第二次成功的解决方案

本文详细介绍了微信小程序中登录态管理的实践,包括在onLoad时先调用wx.login获取code,然后使用code换取session_key、openid和unionid。在获取手机号的回调中,利用wx.checkSession检查登录态是否过期。如果未过期,则直接获取手机号;如果过期,需重新执行wx.login。此策略确保了用户登录态的顺畅和安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

根据官方文档说明

在回调中调用wx.login 可能会刷新登录态,那么wx.login就放在获取手机号前面,

在onload时就可以先wx.login 获取code,然后调用第三方接口获取 session_key,openid,unionid,

在获取手机号回调中,通过wx.checksesstion检测session是否过期,如果没有过期,去调用接口获取手机号即可;如果过期,那么重新去wx.login获取code。

项目例子,具体代码根据项目来:

1先wx.login:拿到code, 到后台换取session_key,openid,unionid  以备后面用

代码已封装在方法里面

2.获取手机号bindgetphonenumber

wx.checksession检测是否过去,过期则重新wx.login,没有就调接口获取手机号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值