不明白你的表述,你具体想解决什么问题
微信小程序手机号授权登录流程问题?理解的流程:小程序端获取到code,调用后端接口,后端调用getPhoneNumber接口拿到手机号,然后判断手机号是否存在,不存在即注册,存在即返回用户信息登录。我看好多文章需要拿到openid啥的,难道我理解的流程有问题吗,大佬们解答下。 [图片]
2023-04-21这问题搞了我2天,来挖个坟 我和楼主的思路原本是一样的,触发getPhoneNumber后,再调用wx.login及wx.request(到我的后台解密),问题就出在这。 我个人猜测,调用getPhoneNumber后,微信后台生成一个session,再调用wx.login,又再生成一个session,这时候通过getPhoneNumber得到的iv、encryptedData等信息就失效,再用这些参数去解密得到的session_key自然就失败了。这也解析了为何第一次失败,第二次就成功。因为在login的code仍生效时,再调用wx.login,微信后台不会再产生新的session_key。 所以解决方法是先调用wx.login,保存好code。调用getPhoneNumber后就直接调用wx.request去后台解密,亲测有效 但这个方法还是有坑,如果调用wx.login后,没有在5分钟内调用getPhoneNumber,那code就是会失效,拿不到session_key。这个就只能重新执行一次wx.login了.....谁设计的.......
关于jscode2session,解密手机号码问题?界面 [图片] 问题:每次‘点击获取‘’第一次总是失败重试,第二次就OK了。 小程序端传入encryptedData, iv 到后端PHP [图片] php 处理代理 [图片] 如果代码有问题应该没有成功的解密号码的可能性。接口是这样返回的。 [图片] [图片] 请问有没高手是啥问题啊。。。。百思不得姐啊
2023-04-20