小程序授权登录流程
直接上代码
1、 首先打开小程序时 就要判断是否授权
//小程序官方文档提供的wx.getSetting方法可以看到各种授权,有兴趣可以自己看看,这里我们就只要scope.userInfo这个属性
wx.getSetting({
success: async (res)=>{
if(res.authSetting["scope.userInfo"]){
console.log("已授权")
this. denglu()
}else{
}
}
})
2、如果已经授权过,查看一下有没有登录
wx.getStorageSync('token')
- 如果有token,就什么都不用干了
- 如果没有,就要进入登录环节,
3、如果没有授权过
-利用微信官方提供的button属性 open-type="getUserInfo"
-还有方法bindgetuserinfo="getUserInfo"
触发回调
//这里是利用wx.login 来获取临时code码,然后调用接口用它去换token
wx.login({
success: async (res)=>{
console.log(res.code)
this.setData({
code:res.code
})
if(res.code){
let {data} = await ajaxLogin(res.code)
console.log(data.data.uid)
wx.setStorageSync('uid', data.data.uid)
//这里写的是 如果用户不存在 调用this.register()我自己写的注册方法
if(data.code==10000){
this.register()
}else{
wx.setStorageSync('token', data.data.token)
this.setData({
hasUserInfo:true
})
}
}else{
console.log("登录失败")
}
}
})