我的问题:由于微信改版,授权登录不再主动弹出弹窗授权,只能通过button去触发,这样对于我们这种想要在网站进入就拿到用户信息的码农们,很是郁闷。
但是呢,也理解,官方为了保证用户隐私,必须用户主动把信息给你看,否则你就不能看,这一点还是很好的。
那么针对这一改版,我们应该做些什么调整呢?
我的实现思路:
一、根据小程序中文档的相关介绍,我将openid的获取和用户信息分开成两块,关于openid的获取是没有太大限制的,整个网站中,用openid串联起来,就足够我们实现网站开发了,用户昵称信息什么的一般来说,也不重要。
1.首先调用login方法拿到code
2.根据code去后台换取openid
// 登录
wx.login({
success: res => {
// 发送 res.code 到后台换取 openId, sessionKey, unionId
if (res.code) {
var code = res.code;
that.gologin(code);
} else {
console.log('获取用户登录态失败!' + res.errMsg)
}
}
})
通过gologin方法拿到前后台关联的token值(此处我命名为ukey),将ukey保存在全局里面,供其他的每一个小程序页面获取。
其中有一段代码,我是专门用来判断子页面加载的,因为有可能在子页面请求的时候,app.js全局的ukey值还