小程序的登录流程
原创文章,未经允许,请勿转载
sequenceDiagram
小程序前端->>微信客户端API: wx.login
Note over 小程序前端,微信客户端API: 静默进行,不会弹出授权弹窗
微信客户端API->>小程序前端: code
小程序前端->>小程序服务端: code
小程序服务端->>微信服务端API:code appid secret
Note over 小程序服务端,微信服务端API: 请求 jscode2session 接口
微信服务端API->>小程序服务端:openid session_key
如果小程序只需要识别用户,而不需要获得用户的昵称等信息,那么整个过程是没有弹窗授权操作的,如果需要进一步获得用户信息,则需要放置下面这个按钮
<button open-type="getUserInfo" lang="zh_CN" bindgetuserinfo="onGotUserInfo">获取用户信息</button>
这个按钮点击会弹出授权框,onGotUserInfo
回调方法内可以获得用户信息和签名,小程序服务端使用session_key和用户信息做sha1运算后和签名校验用户信息
sequenceDiagram
小程序前端->>微信客户端API: button open-type="getUserInfo"
Note over 小程序前端,微信客户端API: 会弹出授权弹窗
微信客户端API->>小程序前端: rawData signature
小程序前端->>小程序服务端: rawData signature
Note right of 小程序服务端: 使用session_key校验
来源:悠游悠游,2019-05-28,原文地址:https://yymmss.com/p/mp-login-desc.html