app跳转小程序免登录

app跳转小程序二次登录:

app跳转小程序,第一种做法是

点击 app 页面 --> 跳转到对应小程序的路径 --> 登录小程序 --> 使用功能。

这种做法,在 app跳转小程序后,需要二次登录,用户体验不是很好。

app跳转小程序免登录:

(1) 点击 app 页面

(2) 跳转到中间页(可以是小程序,或者H5)

由app到中间页,需要传递的参数可以放在跳转路径后面。比如 订单号、订单类型这些。

(3) 前端调用微信的 wx.login 接口 获取code。

code是用户登录凭证(有效期五分钟)。

wx.login 接口 文档:

https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html

(4) 前端将微信返回的code及app传递的参数传给服务端。
app传递的其它参数,可以一起传给服务端。比如 订单号、订单类型这些。

(5) 服务端调用微信 的code2Session接口。

根据 code 获取 用户唯一标识 OpenID 、 用户在微信开放平台账号下的唯一标识UnionID(若当前小程序已绑定到微信开放平台账号) 和 会话密钥 session_key

根据用户标识来生成自定义登录态,返回给前端。用于后续业务逻辑中前后端交互时识别用户身份。

如果业务仅需要 openId 以及其它前端传递过来的参数(比如前面的订单号),也可以不生成自定义登录态,服务端直接执行业务,就不需要第5步了。

code2Session接口文档:

https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-login/code2Session.html

(5) 前端根据 wx.request 向服务端发起业务请求, 参数带上自定义登录态。

wx.request的接口文档:

https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html

小程序登录的流程图

app跳转小程序免登录_第1张图片

小程序登录的官方文档

https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html

你可能感兴趣的:(A1-系统设计与架构,小程序,java)