1.用户授权
在开发小程序的前段时间,微信刚好升级了小程序接口。“获取 wx.getUserInfo 接口后续将不再出现授权弹窗”,只能通过让用户点击button的方式发起授权。升级的原因是要在某些时候需要用到数据时才让用户授权而不是一进去就授权。。。
authorize方法也行不通了,查了文档发现多了一句话“注意:scope 为 "scope.userInfo" 时,无法弹出授权窗口”
参考文档:
https://developers.weixin.qq.com/blogdetail?action=get_post_info&lang=zh_CN&token=461213152&docid=0000a26e1aca6012e896a517556c01&devtools=1
所以进入小程序得要有个授权页面引导用户点击授权
在没有授权之间如何拿到用户的头像跟昵称呢?小程序有专门的组件可以直接获取到头像跟昵称
<open-data type="userAvatarUrl" class="userinfo-avatar" background-size="cover" style="overflow:hidden"></open-data>
<open-data type="userNickName" class="userinfo-nickname"></open-data>
当用户不是第一次进入小程序的时候,不能每次进入都点击授权吧?
这个时候就要用到wx.checkSession方法了,作用是校验用户当前session_key是否有效。
wx.checkSession({
success: function(){
//session_key 未过期,并且在本生命周期一直有效,
//此时可以不需用户点击直接跳转进入其他页面
wx.switchTab()或者wx.navegateTo()
},
fail: function(){
// session_key 已经失效,需要重新执行登录流程
wx.login() //重新登录
....
}
})