You need to sign in or sign up before continuing.
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
}

改进点

  1. 类型安全: 使用强类型对象替代Map,提供编译时类型检查
  2. 参数验证: 使用@Valid注解和Bean Validation进行参数验证
  3. 统一响应: 使用ApiRes统一响应格式,包含code、message、data字段
  4. 简化命名: 使用简化的类名(Req/Res后缀),代码更简洁
  5. 文档完善: 使用Swagger注解提供完整的API文档
  6. 代码可读性: 代码更加清晰,易于维护
  7. 错误处理: 统一的错误响应格式,便于前端处理

验证清单

  • 登录接口返回统一响应格式(ApiRes)
  • 参数验证正常工作(空用户名/密码会返回验证错误)
  • 刷新令牌接口正常工作,返回统一响应格式
  • 用户信息接口正常工作,返回统一响应格式
  • 登出接口正常工作,返回统一响应格式
  • 错误响应格式统一(包含code、message、data字段)
  • Swagger文档正确显示新的统一响应格式
  • 所有类名已成功简化为Req/Res后缀