test_api.md
2.42 KB
API 测试指南
测试统一响应格式的API接口
1. 登录接口测试
请求URL: POST http://localhost:8083/api/auth/login
请求体:
{
"username": "admin",
"password": "password"
}
预期响应 (统一响应格式):
{
"code": 200,
"message": "登录成功",
"data": {
"token": "eyJhbGciOiJIUzUxMiJ9...",
"refreshToken": "eyJhbGciOiJIUzUxMiJ9...",
"username": "admin"
}
}
2. 刷新令牌接口测试
请求URL: POST http://localhost:8083/api/auth/refresh
请求体:
{
"refreshToken": "从登录响应中获取的refreshToken"
}
预期响应:
{
"code": 200,
"message": "令牌刷新成功",
"data": {
"token": "eyJhbGciOiJIUzUxMiJ9...",
"refreshToken": "eyJhbGciOiJIUzUxMiJ9...",
"username": "admin"
}
}
3. 获取用户信息接口测试
请求URL: GET http://localhost:8083/api/auth/userinfo
请求头:
Authorization: Bearer {从登录响应中获取的token}
预期响应:
{
"code": 200,
"message": "获取用户信息成功",
"data": {
"username": "admin",
"authorities": [
{
"authority": "ROLE_ADMIN"
}
]
}
}
4. 登出接口测试
请求URL: POST http://localhost:8083/api/auth/logout
预期响应:
{
"code": 200,
"message": "登出成功",
"data": null
}
改进点
- 类型安全: 使用强类型对象替代Map,提供编译时类型检查
- 参数验证: 使用@Valid注解和Bean Validation进行参数验证
- 统一响应: 使用ApiRes统一响应格式,包含code、message、data字段
- 简化命名: 使用简化的类名(Req/Res后缀),代码更简洁
- 文档完善: 使用Swagger注解提供完整的API文档
- 代码可读性: 代码更加清晰,易于维护
- 错误处理: 统一的错误响应格式,便于前端处理
验证清单
- 登录接口返回统一响应格式(ApiRes)
- 参数验证正常工作(空用户名/密码会返回验证错误)
- 刷新令牌接口正常工作,返回统一响应格式
- 用户信息接口正常工作,返回统一响应格式
- 登出接口正常工作,返回统一响应格式
- 错误响应格式统一(包含code、message、data字段)
- Swagger文档正确显示新的统一响应格式
- 所有类名已成功简化为Req/Res后缀