uniapp微信登录

前提条件:小程序实现微信登陆,首先你的小程序要是已经认证的小程序,如果是个人小程序账号的话应该不太行;

写代码前:①:首先你要把你的Appid和secretid发给后端,这样接口才能调通,在小程序官网里就可以找到,官网网址:微信公众平台

②:后端应该会提供两个接口,一个接口用来直接微信登陆(在手机号已经绑定过的情况),还有一个接口用来把微信手机号绑定小程序(通常是第一次在小程序上微信登陆的情况);

具体步骤:①:首先调第一个接口来判断是否手机号已经绑定小程序,如果已经绑定就会返回token可以直接登录,如果未绑定就会返回openid就要继续调第二个接口,

此时调这个接口需要传过去一个code,code的获取方法:

wx.login({
		  success(res) {
			console.log(res.code)
		  }
		})

此时调通接口后,如果手机号已经绑定过了,那这个接口会直接返回token,直接登陆进去就可以了,但是如果手机号没绑定过,这个接口会返回一个openid,这个openid用来发起第二次请求 。

②:此时第二次请求还要传一个code但是和第一个不是同一个code,此时这种情况是用户第一次微信登录,所以要绑定手机号,绑定手机号要用小程序提供的接口,当点击这个按钮后可以直接触发手机号绑定申请(如果你的小程序账号是个人账号的话这里就不会出现弹窗)

<button type="primary" open-type='getPhoneNumber' @getphonenumber="getUserPhoneNumber">去绑定 </button>

用户点已同意绑定手机号后,这个函数里就会拿到code,用这个code和openid直接调第二个接口就可以了绑定成功,接口会返回token直接登陆即可

const getUserPhoneNumber = (e)=>{
		console.log(e.detail.code)
}
			

注意:要注意的一点就是其中code是不能重复使用的,例如当用户点击拒绝绑定可能是他点错了,此时你就要判断,当用户每点击同意的时候再重新调一下获取code的函数。

总结:第一次写小程序,第一次写小程序的微信登陆,摸着石头过河,过来之后发现河水并不深,所以不要焦虑,凡事一点一点来总是可以解决的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值