小程序授权登陆流程
思路:
登录按钮注册点击事件,
在事件中用微信中的wx.login的方法来获取code,
创建一个对象来收需要的值 ,
然后把这个对象作为参数去请求登录接口,
如果登录成功就会返回一个token的值,
储存到本地缓存中并跳转到支付页面。
代码:
handleUserInfo(e){
console.log(e);
new Promise((resolve, reject) => {
wx.login({
success: (res) => {
let code = res.code; //返回一个code
const loadingParams = {
encryptedData: e.encryptedData,
rawData: e.rawData,
iv: e.iv,
signature: e.signature,
code
}; // 创建一个对象 执行resolve
resolve(loadingParams); // 把创建的对象当作参数
},
fail(err) {
reject(err);
}
})
}).then(res => { // res 就是resolve 中的参数
console.log(res);
wx.request({
url: 'https://api-hmugo-web.itheima.net/api/public/v1/users/wxlogin', // 相当于登录的接口
data: res,
method: 'post',
success(res) {
// res中一般会包含一个token
wx.navigateBack({ // 返回上一个页面
delta: 1
});
},
fail(err) {
console.log(err);
}
})
})
},