uniapp 实现小程序授权登录

第一步 uni.login(object)

 详细说明可以看uniapp 的官网uni.login(OBJECT) | uni-app官网

uni.login({
					provider: "weixin",  //登录服务提供商
					scopes: ' auth_base', //授权类型,默认 auth_base。
					onlyAuthorize: true, //微信登录仅请求授权认证
					success: (res) => {
						console.log(res); //主要是取code的值传给后端拿token
                        //这里是后端的请求的接口
						this.$api.user.wxLogin({
							js_code: res.code
						}, res => {
							console.log(res.data);
							if (res.data.code == 1) {
								uni.setStorageSync('wxlogin', res.data.data.token);
							} else {
								uni.showToast({
									title: res.data.msg,
									icon: "none"
								})
							}
						})
						

					}
				})
<button open-type="getPhoneNumber" class="btn" @getphonenumber="getPhoneNumber">手机号快捷登录(推荐)</button>
getPhoneNumber(res) { // 获取手机号
				console.log(res)
				if(res.detail.errMsg && res.detail.errMsg == 'getPhoneNumber:fail user deny'){
					console.log('用户拒绝获取手机号');
					uni.showToast({
						title: '您点击了拒绝',
						icon:"none"
					});
					return false
				}
				this.phone_code = res.detail.code // 获得的手机code
				this.phone_encryptedData = res.detail.encryptedData //用于解密
				this.phone_iv = res.detail.iv // 用于解密
                //请求后端接口 返回用户信息
				this.$api.user.bingPhoneFromWx({
					code:this.phone_code,
					token:uni.getStorageSync('wxlogin')
				},res=>{
					console.log(res);
					if(res.data.code==1){
						uni.switchTab({
							url:'../../pages/tabbar/mine/mine'
						})
					}else{
						uni.showToast({
							title:res.data.msg,
							icon:"none"
						})
					}
				})

			},

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值