【小程序】微信小程序登录与授权

授权与登录是两个行为,授权是为了提供更多的功能(平台限制一些api只能授权后使用),登录是为了确定当前是哪个用户

登录流程

所谓登录就是确定当前是哪个用户

在微信小程序中就是从微信官方获取用户的唯一标识 openid(当前应用)和unionid(当前微信开放平台账号) 然后通过 openidunionid 绑定用户的过程

  1. 在小程序端调用 wx.login() ,成功时可获得临时登录凭证code ,返回结果如下

    {code: "031mRf000Xa8sL1Z5k000WVDxo4mRf0o",
    errMsg: "login:ok"}
    
  2. 在小程序端把 code 传给后台

  3. 后台调用 auth.code2Session 接口,用前端传来的临时登录凭证code换取 openid和会话秘钥 session_key

  4. 进行到这一步时后台已经得到了用户的唯一标识,也就代表能确定当前是哪个用户

openid 和 unionid 的区别

  1. 只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 unionid 是唯一的
  2. 同一个微信开放平台帐号 下的不同应用 openid 是不同的

获取用户授权

第一次调整,微信小程序官方文档:小程序与小游戏获取用户信息接口调整

第二次调整,微信小程序官方文档:小程序登录、用户信息相关接口调整说明

第二次调整前,该方法2021-4-13后只能获取匿名信息

  1. 用一个按钮设置 open-typegetUserInfo
  2. 按钮绑定 getuserinfo 事件来接收获取到的用户信息
<button open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">用户授权</button>

第二次调整后

  1. 直接调用 wx.getUserInfo() 获取,必填参数为desc,表述获取用户信息的用途,未来会显示在授权窗口
wx.getUserInfo({
    desc: '获取用户信息'
})

人事一点不干。。。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值