diff --git a/docs/api/api-documentation.md b/docs/api/api-documentation.md index 3e73815..457b3d2 100644 --- a/docs/api/api-documentation.md +++ b/docs/api/api-documentation.md @@ -209,12 +209,12 @@ { "success": false, "message": "验证码错误或已过期", - "error_code": "VERIFICATION_CODE_INVALID" + "error_code": "VERIFICATION_CODE_LOGIN_FAILED" } ``` **可能的错误码**: -- `VERIFICATION_CODE_INVALID`: 验证码错误或已过期 +- `VERIFICATION_CODE_LOGIN_FAILED`: 验证码错误或已过期 - `USER_NOT_FOUND`: 用户不存在 - `EMAIL_NOT_VERIFIED`: 邮箱未验证(邮箱登录时) - `INVALID_IDENTIFIER`: 无效的邮箱或手机号格式 @@ -271,7 +271,7 @@ { "success": false, "message": "用户不存在", - "error_code": "USER_NOT_FOUND" + "error_code": "SEND_LOGIN_CODE_FAILED" } ``` @@ -1495,6 +1495,8 @@ const cleanupTestData = async () => { |----------|------------|------|----------| | VERIFICATION_CODE_EXPIRED | 400 | 验证码已过期 | 验证码超过有效期(5分钟) | | VERIFICATION_CODE_INVALID | 400 | 验证码无效 | 验证码格式错误或不存在 | +| VERIFICATION_CODE_LOGIN_FAILED | 401 | 验证码登录失败 | 验证码错误、已过期或用户邮箱未验证 | +| SEND_LOGIN_CODE_FAILED | 400/404 | 发送登录验证码失败 | 用户不存在或发送服务异常 | | VERIFICATION_CODE_ATTEMPTS_EXCEEDED | 400 | 验证码尝试次数过多 | 错误尝试超过3次 | | VERIFICATION_CODE_RATE_LIMITED | 429 | 验证码发送频率限制 | 1分钟内重复发送 | | VERIFICATION_CODE_HOURLY_LIMIT | 429 | 验证码每小时限制 | 1小时内发送超过5次 | @@ -1921,8 +1923,10 @@ MAINTENANCE_RETRY_AFTER=1800 2. **令牌**: 示例中的access_token是JWT格式,需要妥善保存 3. **验证码**: - 实际应用中不应在响应中返回验证码 - - 测试模式下会在控制台显示验证码 - - 验证码有效期通常为5-15分钟 + - 测试模式下会在控制台显示验证码,或通过调试接口获取 + - 验证码有效期通常为5分钟 + - 验证码登录要求邮箱已验证(email_verified=true) + - 调试接口:`POST /auth/debug-verification-code` 可获取验证码详情 4. **用户ID**: 修改密码接口中的user_id应从JWT令牌中获取,而不是从请求体中传递 5. **错误处理**: 建议在客户端实现适当的错误处理和用户提示 6. **限流**: 建议对登录、注册等接口实施限流策略 @@ -1937,6 +1941,11 @@ MAINTENANCE_RETRY_AFTER=1800 - 注册时如果提供邮箱,需要先获取验证码 - 支持重新发送验证码功能 - 调试接口仅用于开发环境 +10. **验证码登录**: + - 验证码登录需要用户邮箱已验证 + - 支持邮箱和手机号两种方式 + - 验证码类型为 `login_verification` + - 与注册验证码是不同的验证码类型 ## 常见测试场景