1.调用wx.login接口获取code
wx.login({
success(res) {
if (res.code) {
//发起网络请求
_this.getOpenid(res.code); //拿到code后去获取openid
} else {
console.log('操作失败!' + res.errMsg)
}
},
fail(data) {
wx.showToast({
title: data.errMsg,
icon: 'none'
})
}
})
2.调用后端专门写的通过code换openid的接口
async getOpenid(code) {
try {
let data = {
code: code
}
const res = await apiPersonal.wxUserVerify(data)
if (res.code == 200) {
// 此处是手机验证码登录和账户密码登录两种情况
if (this.data.loginType == 'password') {
this.loginFn(res.result.openid);
} else {
this.loginCodeFn(res.result.openid);
}
} else {
wx.showToast({
title: res.message,
icon: 'none'
})
}
} catch (error) {
}
},