前端开发思路:
1.通过点击按钮,拿到code,传给后台,后台通过code换取session_key 和 openid 这个地方调取 wx.login 这个API
2.调取wx.getUserProfile获取用户信息。wx.getUserInfo这个api不建议使用了,之前微信调整了获取用户头像昵称的api.
3.把数据传递给后台
<button type="primary" class="sqbtn sqbtn1 f13" @click="userSq"> 授权 </button>
// 获取用户信息getUserProfile() {return new Promise((reject, resolve) => {wx.getUserProfile({lang: 'zh_CN',desc: '用于完善会员资料',success: res => {reject(res)},fail: () => {uni.hideLoading()uni.showToast({title: '请点击允许授权'})this.$u.func.showToast('请点击允许授权')resolve()}})})},getCode() {return new Promise((reject, resolve) => {uni.login({provider: 'weixin',success: res => {reject(res.code)},fail: () => {uni.hideLoading()this.$u.func.showToast('授权登录失败')resolve()}})})},//用户授权点击事件async userSq() {let _this = thisuni.showLoading({title: '授权登录中......'})_this.code=await _this.getCode()_this.userData = await _this.getUserProfile()//在这里就可以放我们自己的传递用户信息的接口了uni.hideLoading()_this.flag = false},
以上就是获取用户信息授权登录的接口。