# 公开接口文档(免鉴权) 基础路径:`/mgt/`,以下接口**不需要** JWT 认证。 --- ## 1. 登录 **路径**:`POST /mgt/login` **说明**:支持账号密码登录或 AppId/AppKey 登录,二选一。 **请求体**(LoginRequest): | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | account | string | 否 | 账号(与 password 一起使用) | | password | string | 否 | 密码 | | phone | string | 否 | 手机号,若使用需符合 phone 格式 | | phone_code | string | 否 | 手机验证码 | | workspace | string | 否 | 应用 workspace | | app_id | string | 否 | 应用 ID(与 app_key 一起使用) | | app_key | string | 否 | 应用密钥 | **约束**:`account + password` 或 `app_id + app_key` 必须提供一组。 **请求示例(账号密码)**: ```json { "account": "zhangsan", "password": "abc12345", "workspace": "my_app" } ``` **请求示例(应用密钥)**: ```json { "app_id": "my_app", "app_key": "secret_key_xxx" } ``` **返回**(LoginResp): | 参数 | 类型 | 说明 | |------|------|------| | token | string | JWT,后续请求放在 Header Authorization | | user_id | number | 用户 ID | | identity | string | 用户唯一标识 | | account | string | 账号 | | name | string | 姓名 | | phone | string | 手机号 | | email | string | 邮箱 | | avatar | string | 头像 | **返回示例**: ```json { "code": 0, "data": { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "user_id": 1, "identity": "01ARZ3NDEKTSV4RRFFQ69G5FAV", "account": "zhangsan", "name": "张三", "phone": "13800138000", "email": "zhangsan@example.com", "avatar": "https://example.com/avatar.png" } } ``` --- ## 2. 刷新 Token **路径**:`POST /mgt/refresh` **说明**:基于当前请求中的 JWT 签发新 token。通常需在 Header 中带有效 Authorization。 **请求体**:无,或空 JSON `{}`。 **返回**: | 参数 | 类型 | 说明 | |------|------|------| | token | string | 新的 JWT | **返回示例**: ```json { "code": 0, "data": { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." } } ``` --- ## 3. 重置密码(短信验证码) **路径**:`POST /mgt/reset` **请求体**(ForgetPwdRequest): | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | account | string | 是 | 账号 | | code | string | 是 | 短信验证码 | | password | string | 是 | 新密码,最少 6 位 | | phone | string | 是 | 手机号,需符合 phone 格式 | **请求示例**: ```json { "account": "zhangsan", "code": "123456", "password": "newpass123", "phone": "13800138000" } ``` **返回示例**: ```json { "code": 0, "data": "密码重置成功" } ``` --- ## 4. 健康检查 Ping **路径**:`GET /mgt/ping` **说明**:无需请求体,用于健康检查。 **返回示例**: ```json { "message": "Pong" } ``` --- ## 5. Session 演示 **路径**:`GET /mgt/session` **说明**:Session 示例接口,会写入并读取 session。 **返回示例**: ```json { "message": "Pong" } ```