现在遇到的情况是:
不同主体要获取UnionId
但是一定要用户授权,然后一定得用 button 的 open-type="getUserInfo" ,成功后通过 bindgetuserinfo="onGotUserInfo" 获得登录加密数据,但是这个加密数据是需要code去解的,但是wx.login不能写在 onGotUserInfo 里面啊,至此,逻辑是不是错了。wx.env.USER_DATA_PATH这个路径是只能开发者能用吗?,微信小程序教程 ...。
现在的逻辑是:
wx.login -> button -> code和加密数据 -> 解密
正确的逻辑应该是这样吧?
button -> wx.login -> code和加密数据 -> 解密
当前的解决方案该怎么办? 用户点登录按钮前事先给他生成好 code 吗?
本文来自微信小程序开发者论坛 -微信小程序工厂 http://www.xcxgc.com,转载请保留,开发微信小程序、定制微信小程序来微信小程序工厂网。
网友回复
晨**回复: session未过期情况下login会刷新登录态,导致sessionKey发生变化。稳妥的方案是在用户点击授权后,先checkSession,如果未过期,不login,服务器可以用之前的sessionKey解密。如果session过期,需要重新login,使用新的sessionKey解密,这时login code换取的sessionKey和加密userInfo的是同一个。
本文网址:http://www.91bianli.com/kaifazhinan/74413.html