# 多端应用登录时序

```mermaid
sequenceDiagram
    participant client as 多端应用
    participant dev server as 开发者服务器
    participant wx server as 微信接口服务

    client->>client:wx.xxxLogin 获取 code
    client->>dev server:发送 code
    dev server->>wx server:code2Verifyinfo(appid+appsecret+code)
    wx server->>dev server:返回用户标识信息等
    dev server->>dev server:构建自定义登录态
    dev server->>client:返回自定义登录态
    client->>client:存储自定义登录态
    client->>dev server:业务请求，携带自定义登录态
    dev server->>client:业务响应
```

**时序说明**

1. wx.xxxLogin 表示不同登录方式，[wx.weixinAppLogin](/miniprogram/dev/platform-capabilities/miniapp/api/auth/wx.weixinAppLogin)、[wx.weixinMiniProgramLogin](/miniprogram/dev/platform-capabilities/miniapp/api/auth/wx.weixinMiniProgramLogin)、[wx.phoneSmsLogin](/miniprogram/dev/platform-capabilities/miniapp/api/auth/wx.phoneSmsLogin) 和 [wx.appleLogin](/miniprogram/dev/platform-capabilities/miniapp/api/auth/wx.appleLogin) 等。调用 wx.xxxLogin 获取临时登录凭证 (code)，并传到开发者服务器。
2. 开发者[获取多端应用 ID 与密钥](/miniprogram/dev/platform-capabilities/miniapp/handbook/web/auth_mgnt)。然后在服务器调用服务端接口[登录凭证校验](/miniprogram/dev/platform-capabilities/miniapp/openapi/code2Verifyinfo) 获取用户标识信息，基于该信息构建自定义登录态，用于后续业务逻辑中前后端交互时识别用户身份。
