微信小程序登录流程

做个笔记记录一下之前写的微信小程序登录流程

微信小程序中,微信登录是必备定的

  1. 微信开发平台 微信登录流程

  2. 流程图如下
    在这里插入图片描述

看这个图文信息,就能看懂大概的流程

我就根据我的项目说一下微信小程序登录流程
使用到uni.getUserProfile()uni.login()API

  1. uni.getUserProfile():提示用户授权获取用户信息(账号名、电话号码、性别、头像)等基本信息给后端
  2. uni.login():获取微信用户的临时code(用户登录凭证。开发者需要在开发者服务器后台,使用 code换取 openidsession_key等信息),丢给后台利用临时的code生成登录凭证Token

源码

Register() {
				let that= this
				uni.getUserProfile({ //获取用户微信信息
					desc: '登录授权',
					success: (res) => {
						that.myUserInfo = res.userInfo   //用户信息
						let nickName = that.myUserInfo.nickName
						let avatarUrl = that.myUserInfo.avatarUrl
						uni.login({ //获取微信code
							provider: 'weixin',//微信小程序
							success: function(loginRes) {
								that.getToken(loginRes.code, duijianren, nickName, avatarUrl)
							}
						});
					},
					fail: (res) => {
						console.log("用户拒绝登录", res)
					}
				});
			},

getToken(code, duijianren, nickName, avatarUrl) { //登录获取token
				var that= this;
				this.$http.request('测试接口').then(function(res) {
					if (res.code == 200) {
						uni.setStorageSync('Token', res.data.data.token);//保存token
						uni.showToast({
							title: '登录成功'   //提示登录成功
						});
						return
					}
					uni.showToast({
						title: '登录失败',
						icon: "none"
					});
				}).catch(function(err) {
					console.log(err)
				})
			},

现在新上线的小程序通过uni.getUserInfo()是获取不到用户信息的,需要使用uni.getUserProfile()获取,在用户主动授权后,才可以获取用户的信息

在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值