uniapp小程序实现微信登录

getWXname() {
				var that = this;
				uni.showLoading({ // 展示加载框
					title: '加载中',
				});
				uni.getUserProfile({ //获取到用户信息
					desc: '登录后可同步数据',
					success: async (obj) => {
						// console.log('obj', obj);
						that.nickName = obj.userInfo.nickName //用户名
						that.avatarUrl = obj.userInfo.avatarUrl //用户头像

						// 调用 action ,请求登录接口
						uni.login({
							provider: 'weixin',
							success: (res) => {
								console.log('res-login', res);
								//获取到code
								that.code = res.code;
								// console.log('code', res.code);

								//请求登录接口
								if (res.errMsg == 'login:ok') {
									var params = {
										code: that.code,
										nickname: that.nickName,
										avatar: that.avatarUrl
									}

									$http.request({
										url: "/api/member/user_center", 
										data: {
											user_id: 1
										}
									}).then((res) => { //这里是调用接口成功的
										// console.log(33, res.data.data) //成功返回url接口的数据
										this.$store.commit('getuserName', res.data.data)
										uni.showToast({
											title: '登入成功', //显示内容
											icon: 'none', //图标
											duration: 1000, //弹窗秒数
										});
										setTimeout(() => {
											uni.redirectTo({
												url: "/pages/tab/myinfo/myinfo"
											});
										}, 2000)

									}).catch((res) => { //这里是调用接口失败的
										uni.showToast({ //这是一个提示框信息
											title: '请求失败',
											icon: 'none'
										})
									})

								}
							},
						});
					},
					fail: () => {
						uni.showToast({
							title: '授权已取消',
							icon: 'error',
							mask: true,
						});
					},
					complete: () => {
						// 隐藏loading
						uni.hideLoading();
					},
				});


			},

猜你喜欢

转载自blog.csdn.net/weixin_67434908/article/details/130261003