Update documentation structure and enhance API descriptions
- Revised README.md to provide a clearer documentation structure for multiple mini programs, including a new table of contents. - Added references to common authentication documentation in both the remove watermark API and README files. - Improved clarity of the login interface description and error handling messages in the remove watermark API documentation.
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
# 公共说明
|
||||
|
||||
本目录存放所有小程序共用的接口约定与调用方式,避免每个子系统重复描述。
|
||||
|
||||
## 基础信息
|
||||
|
||||
- 接口前缀:`/api/v1`
|
||||
- 健康检查:`GET /healthz` → `{"status":"ok"}`
|
||||
|
||||
## 通用响应结构
|
||||
|
||||
本项目所有接口使用统一 JSON 结构(见:`docs/common/response.md`):
|
||||
|
||||
```json
|
||||
{
|
||||
"code": 200,
|
||||
"message": "success",
|
||||
"data": {}
|
||||
}
|
||||
```
|
||||
|
||||
## 认证方式
|
||||
|
||||
除登录接口外,其他接口都需要携带登录后返回的 `session_key`(见:`docs/common/auth.md`)。
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
# 认证与登录
|
||||
|
||||
## 1) 登录
|
||||
|
||||
`POST /api/v1/auth/login`
|
||||
|
||||
说明:小程序端调用 `wx.login()` 获取 `code`,后端用该 `code` 向微信 `jscode2session` 换取 `openid/session_key`,并在数据库中创建/更新用户记录。
|
||||
|
||||
请求示例:
|
||||
|
||||
```bash
|
||||
curl -X POST 'http://127.0.0.1:8080/api/v1/auth/login' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{
|
||||
"mini_program_id": 1,
|
||||
"code": "wx.login 返回的 code",
|
||||
"nickname": "可选:昵称",
|
||||
"avatar_url": "可选:头像",
|
||||
"gender": 1,
|
||||
"phone": "可选:手机号"
|
||||
}'
|
||||
```
|
||||
|
||||
成功响应示例(节选):
|
||||
|
||||
```json
|
||||
{
|
||||
"code": 200,
|
||||
"message": "success",
|
||||
"data": {
|
||||
"user": {
|
||||
"id": 1,
|
||||
"mini_program_id": 1,
|
||||
"open_id": "oXXX",
|
||||
"nickname": "昵称",
|
||||
"avatar_url": "https://...",
|
||||
"gender": 1,
|
||||
"phone": "110"
|
||||
},
|
||||
"session_key": "wx-session-key",
|
||||
"mini_program": {
|
||||
"id": 1,
|
||||
"name": "某小程序",
|
||||
"app_id": "wx..."
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## 2) 受保护接口如何带 Token
|
||||
|
||||
后端把 `session_key` 当做 Token 使用,调用受保护接口时在 Header 中带:
|
||||
|
||||
```
|
||||
Authorization: Bearer <session_key>
|
||||
```
|
||||
|
||||
请求示例:
|
||||
|
||||
```bash
|
||||
curl -X GET 'http://127.0.0.1:8080/api/v1/smoke/logs?page=1&page_size=20' \
|
||||
-H 'Authorization: Bearer wx-session-key'
|
||||
```
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
# 通用响应与错误
|
||||
|
||||
## 通用响应结构
|
||||
|
||||
所有接口响应结构:
|
||||
|
||||
```json
|
||||
{
|
||||
"code": 200,
|
||||
"message": "success",
|
||||
"data": {}
|
||||
}
|
||||
```
|
||||
|
||||
- `code`:业务码(本项目中与 HTTP 状态码保持一致)
|
||||
- `message`:提示信息(部分接口为中文提示)
|
||||
- `data`:成功时返回的数据,失败时通常省略
|
||||
|
||||
## 常见 HTTP 状态码
|
||||
|
||||
- `200`:成功
|
||||
- `400`:请求参数错误
|
||||
- `401`:未登录或登录已过期(缺少/无效 Token)
|
||||
- `403`:无权限或触发业务限制(例如今日额度用尽)
|
||||
- `404`:资源不存在
|
||||
- `500`:服务端内部错误
|
||||
- `502`:第三方服务错误
|
||||
- `503`:服务暂不可用(缺少关键配置等)
|
||||
|
||||
Reference in New Issue
Block a user