微信小程序使用Uni-App一键获取用户信息

用户不想输入账号密码,一键登录

<label for="" @click="LoginDL">一键登陆</label>
uni.getUserProfile(只支持微信小程序)

获取用户信息。每次请求都会弹出授权窗口,用户同意后返回 userInfo。

参数说明:

803EB9BF-7F95-8701-3261-4D336C0228E3.png

ECAE23A5-3A68-5A9E-BF90-AFAA8F7670FA.png

uni.getUserProfile({ //获取微信信息
						desc: '用于获取您的个人信息', // 声明获取用户个人信息后的用途,不超过30个字符
						success: res1 => { //接口调用成功的回调
							uni.showLoading({
								title: '登录中'
							})
							setTimeout(() => {
								uni.hideLoading(); //关闭登陆中状态
								uni.switchTab({
									url: '../myfile/myfile'
								})
								uni.$emit('updateCart') //为了同步渲染购物车数量
							}, 1000)
							var wxfor = {
								wx: res1.userInfo
							}
							//写成键值对形势添加到数据库中
							res.data.data = Object.assign(res.data.data, wxfor)
							this.login(res.data.data)
							console.log(res1);
						}

					})
LoginDL() {
                // 传用户名和信息的接口
				getLogin(this.username, this.password).then(res => {
					console.log(11111111111);
					console.log(res);
					uni.getUserProfile({ //获取微信信息
						desc: '用于获取您的个人信息', // 声明获取用户个人信息后的用途,不超过30个字符
						success: res1 => {  //接口调用成功的回调
							uni.showLoading({
								title: '登录中'
							})
							setTimeout(() => {
								uni.hideLoading(); //关闭登陆中状态
								uni.switchTab({
									url: '../myfile/myfile'
								})
								uni.$emit('updateCart') //为了同步渲染购物车数量
							}, 1000)
							var wxfor = {
								wx: res1.userInfo
							}
							//写成键值对形势添加到数据库中
							res.data.data = Object.assign(res.data.data, wxfor)
							this.login(res.data.data)
							console.log(res1);
						}
					})
				})
			},

D2911461-6726-C2C6-5202-895AE87AB09D.png

在要获取头像的页面接收新增的wx数据,渲染即可,效果如下:(点击一键登录 ——出现弹窗,点击允许——获取成功)

79EF435F-3C8B-F949-C207-4299300DCCB5.png

33E27408-CA9C-EDA2-4A3E-3D89E1699D71.png

收藏 (0)
评论列表
正在载入评论列表...
我是有底线的