微信登录授权方法
微信公众号授权登录方法
01.先请求后台接口获取回调链接地址,使用window.location.href进行跳转。
1 // 授权登录
2 login() {
3 uni.request({
4 url: '后台给的接口地址',
5 method: 'post',
6 data: {}
7 }).then(res => {
8 window.location.href = res.data.data;
9 })
10 },
02.在onLoad()方法中接收参数对code进行赋值,然后通过getUserInfo()方法获取用户信息。
1 onLoad(option) {
2 console.log('授权登录页面的option', option)
3 this.code = option.code
4 if (this.code) {
5 this.getUserInfo()
6 } else {
7 this.login()
8 }
9 },
1 // 获取用户信息
2 getUserInfo() {
3 var that = this;
4 uni.request({
5 url: '获取用户信息接口',
6 method: 'post',
7 data: {
8 code: that.code,
9 openid: uni.getStorageSync('openId') || "",
10 userId: uni.getStorageSync('parentId') || '',
11 }
12 }).then(res => {
13 if (res.data.code == 200) {
14 console.log("获取用户信息");
15 uni.setStorageSync('userInfo', res.data.data)
16 uni.setStorageSync('openId', res.data.data.wechatOpenId)
17 that.getToken(res.data.data.id);
18 }
19 })
20 },
03.最后调用getToken()方法,获取token。
1 // 获取Token
2 getToken(userId) {
3 var that = this;
4 uni.request({
5 url: '获取token接口',
6 method: 'POST',
7 data: {
8 id: userId
9 }
10 }).then(res => {
11 if (res.data.code == 200) {
12 uni.setStorageSync('token', res.data.data)
13 //获取到token之后就可以跳转到项目首页了
14 }
15 })
16 },
前端小白刚开通博客,如若有好的修改建议欢迎大家评论留言交流。