API 模拟文档
API
| 模块名称 | 功能描述 | 接口地址 |
|---|---|---|
| 用户信息接口 | 获取当前登录用户的基本信息 | /api/user/info |
| 订单列表接口 | 查询用户近半年的订单记录 | /api/order/list |
| 支付回调接口 | 处理第三方支付平台回调通知 | /api/pay/callback |
用户信息接口(/api/user/info)
请求方法
- HTTP 方法:
GET - 请求头:
Authorization: Bearer {token}
请求参数
| 参数名称 | 类型 | 必填 | 位置 | 描述 |
|---|---|---|---|---|
| timestamp | int | 是 | 查询参数 | 请求时间戳(防重放) |
| lang | string | 否 | 查询参数 | 语言代码(zh/en) |
响应格式
{
"code": 200,
"message": "请求成功",
"data": {
"user_id": 12345,
"nickname": "张三",
"avatar_url": "https://example.com/avatar.jpg",
"vip_level": 2,
"register_time": "2023-01-15T08:30:00+08:00"
}
}
错误码说明
| HTTP 状态码 | 业务码 | 描述 |
|---|---|---|
| 401 | 40001 | Token 无效或已过期 |
| 403 | 40003 | 无权限访问该接口 |
| 404 | 40004 | 用户不存在 |
订单列表接口(/api/order/list)
请求方法
- HTTP 方法:
POST - Content-Type:
application/json
请求参数
{
"page_num": 1,
"page_size": 10,
"status": ["PAID", "SHIPPED"], // 可选状态过滤
"start_time": "2023-06-01T00:00:00+08:00", // 可选时间范围
"end_time": "2023-12-31T23:59:59+08:00"
}
响应示例
{
"code": 200,
"message": "查询成功",
"data": {
"total": 25,
"items": [
{
"order_id": "ORD202311021001",
"amount": 199.00,
"status": "DELIVERED",
"create_time": "2023-11-02T15:30:00+08:00"
},
// 更多订单数据...
]
}
}
常见问题与解答
Q1: 用户信息接口必须传递 timestamp 参数吗?
A1: 是的,timestamp 是必填参数,用于防止请求重放攻击,服务器会验证时间差是否在允许范围内(例如5分钟内)。

Q2: 订单列表接口的分页逻辑是如何实现的?
A2: 通过 page_num(当前页码)和 page_size(每页条数)实现分页,默认每页返回10条数据,最大支持单次查询100条

各位小伙伴们,我刚刚为大家分享了有关“api 模拟”的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!