授权登录流程:
1.点击按钮触发事件,事件函数里使用 wx.getUserProfile拉出弹出窗(就是下面这个弹窗)
点击允许在成功回调函数中会获取用户信息(微信昵称,头像链接,性别)
2.使用wx.login获取code码
3.code码作为参数去请求接口,得到openid和会话密钥
4.用openid和之前获取的用户微信名,头像链接作为参数去请求接口,得到用户id
(具体需要那些参数看接口要求)
例子代码:
wxml:
<button bindtap="login">授权登录</button>
js:
// 点击授权登录按钮
login:function(){
var that=this
wx.getUserProfile({// 获取用户信息
success:(res)=>{
console.log(res.rawData)
wx.login({// 获取code码
success:(resy)=>{
console.log(resy.code)
wx.request({// 用code码作为参数请求获取openid
url:'请求接口',
method:"post",
header:{
'content-type':'application/x-www-form-urlencoded'
},
data:{
code:resy.code
},
success:(ress)=>{
console.log(ress.data.openid)
wx.request({//用openid作为参数请求接口获取用户id
url: '请求接口',
method:"post",
header:{
'content-type':'application/x-www-form-urlencoded'
},
data:{
openid:ress.data.openid,
NickName:res.userInfo.nickName,
HeadUrl:res.userInfo.avatarUrl,
},
success:(result)=>{//用户id
console.log(result.data.userid)
}
})
}
})
}
})
}
})
}
如有错误,欢迎指出