1. 概述
快驴生鲜系统API接口标准旨在为前后端开发、第三方系统对接提供统一规范,确保系统间数据交互的可靠性、安全性和可维护性。
2. 基础规范
2.1 协议要求
- 必须使用HTTPS协议
- 默认端口443
- 支持HTTP/1.1和HTTP/2
2.2 数据格式
- 请求/响应主体统一使用JSON格式
- 字符编码:UTF-8
- 日期时间格式:ISO8601标准(YYYY-MM-DDTHH:mm:ssZ)
2.3 版本控制
- API版本通过URL路径控制,格式:`/api/v{version}/{resource}`
- 示例:`/api/v1/products`
- 版本号从1开始,重大变更时递增主版本号
3. 接口设计规范
3.1 RESTful风格
- 资源命名使用名词复数形式
- 使用标准HTTP方法:
- GET:获取资源
- POST:创建资源
- PUT:更新完整资源
- PATCH:更新部分资源
- DELETE:删除资源
3.2 路径设计
- 层级清晰,避免过长路径
- 示例:
- `/api/v1/products/{productId}/inventory`
- `/api/v1/orders/{orderId}/items`
3.3 查询参数
- 分页参数:
- `page`:页码(从1开始)
- `pageSize`:每页数量(默认20,最大100)
- 排序参数:
- `sort`:字段名+排序方向(如`price:asc`)
- 过滤参数:
- 使用下划线命名法(如`status_eq=active`)
4. 请求规范
4.1 请求头
- 必须包含:
- `Content-Type: application/json`
- `Accept: application/json`
- `X-Request-ID`: 唯一请求ID(UUID格式)
- 认证相关:
- `Authorization: Bearer {token}`
4.2 请求体
- 复杂对象使用嵌套结构
- 数组使用JSON数组格式
- 示例:
```json
{
"product": {
"name": "新鲜苹果",
"category_id": 101,
"price": 9.99,
"stock": 100,
"attributes": {
"origin": "山东",
"weight": "500g"
}
}
}
```
5. 响应规范
5.1 成功响应
- HTTP状态码:200 OK
- 响应体格式:
```json
{
"code": 0,
"message": "成功",
"data": {
// 业务数据
},
"timestamp": "2023-07-20T10:00:00Z"
}
```
5.2 错误响应
- 通用错误格式:
```json
{
"code": 40001,
"message": "参数错误",
"details": "price必须为正数",
"timestamp": "2023-07-20T10:00:00Z"
}
```
5.3 分页响应
- 包含分页信息的响应:
```json
{
"code": 0,
"message": "成功",
"data": {
"items": [...],
"pagination": {
"total": 100,
"page": 1,
"pageSize": 20,
"totalPages": 5
}
}
}
```
6. 安全规范
6.1 认证授权
- 使用OAuth 2.0授权框架
- JWT令牌有效期不超过2小时
- 支持令牌刷新机制
6.2 数据加密
- 敏感数据传输使用AES-256加密
- 存储加密符合等保三级要求
6.3 限流策略
- 单IP限制:1000请求/分钟
- 接口级限流:根据业务重要性设置不同阈值
7. 文档规范
7.1 OpenAPI规范
- 提供完整的OpenAPI 3.0规范文档
- 包含所有端点、参数、响应示例
7.2 变更记录
- 维护详细的API变更日志
- 版本升级时提供迁移指南
7.3 测试工具
- 提供Postman集合或Swagger UI
- 包含Mock服务用于前端开发
8. 性能规范
8.1 响应时间
- 简单查询:<500ms
- 复杂查询:<2000ms
- 批量操作:<5000ms
8.2 并发处理
- 支持至少1000并发连接
- 数据库连接池配置合理
9. 监控规范
9.1 日志记录
- 记录完整请求/响应日志
- 包含X-Request-ID用于追踪
9.2 指标收集
- 收集API调用次数、成功率、响应时间等指标
- 设置合理的告警阈值
10. 附则
- 本规范由快驴生鲜技术委员会负责解释和修订
- 新接口必须严格遵循本规范
- 现有接口应在3个月内完成规范改造
---
以上规范为快驴生鲜系统API接口开发的基础标准,具体项目可根据实际情况进行适当调整和补充。