PHP

小程序登录流程

野牛哥
2021-04-21 / 0 评论 / 44 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年06月25日,已超过125天没有更新,若内容或图片失效,请留言反馈。

小程序登录流程

步骤一

先调用微信wx.login获取到code

步骤二

把code传给后端,调用auth.code2Session去换取两个必返回参数openidsession_key,unionID要符合条件才会返回

注意:

会话密钥session_key是对用户数据进行加密签名的密钥。为了应用自身的数据安全,开发者服务器不应该把会话密钥下发到小程序,也不应该对外提供这个密钥。
临时登录凭证 code 只能使用一次

关于获取UnionID的前提要求

1、填写一下小程序后台信息 (设置->基本设置)
2、关联一下主体 (设置->关联设置->绑定的微信开放平台账号)
3、登录微信开放平台 — 管理中心 — 小程序 — 绑定小程序

获取UnionID的途径

绑定了开发者帐号的小程序,可以通过以下途径获取 UnionID。

1、调用接口wx.getUserInfo,成功调用会返回vi,encryptedData,然后调用wx.login获取code,一并将这三个参数传给后端,进行解密,怎么解密,看官方文档例子,下载下来按照上面的参数一一对应传入进行解密,后会返回unionid和用户信息

2、如果开发者帐号下存在同主体的公众号,并且该用户已经关注了该公众号。开发者可以直接通过 wx.login + code2Session(这个跟第一步的一样,将code,vi,encryptedData传给后端解密) 获取到该用户 UnionID,无须用户再次授权。

3、如果开发者帐号下存在同主体的公众号或移动应用,并且该用户已经授权登录过该公众号或移动应用。开发者也可以直接通过 wx.login + code2Session 获取到该用户 UnionID ,无须用户再次授权。

4、用户在小程序(暂不支持小游戏)中支付完成后,开发者可以直接通过getPaidUnionId接口获取该用户的 UnionID,无需用户授权。注意:本接口仅在用户支付完成后的5分钟内有效,请开发者妥善处理。

5、小程序端调用云函数时,如果开发者帐号下存在同主体的公众号,并且该用户已经关注了该公众号,可在云函数中通过 cloud.getWXContext 获取 UnionID。

6、小程序端调用云函数时,如果开发者帐号下存在同主体的公众号或移动应用,并且该用户已经授权登录过该公众号或移动应用,也可在云函数中通过 cloud.getWXContext 获取 UnionID。

小程序登录流程图

本文共 624 个字数,平均阅读时长 ≈ 2分钟
5

打赏

评论 (0)

取消