#API 错误处理指南
本指南概述了后端应如何处理合作伙伴 APIs 返回的错误。错误遵循一致的 JSON 格式:
{
"code": "<error_code>",
"debugMessage": "<detailed_error_description>",
"message": "<user_friendly_message>"
}
#错误格式说明
- 代码:错误的预定义整数标识符(不是 HTTP 状态代码)。每种错误类型都是唯一的。
- debugMessage:为开发人员提供帮助调试的详细说明。在
production环境中不可用。 - 消息:适合最终用户显示的简洁、用户友好的消息。
#HTTP 状态代码
| HTTP 状态 | 描述 | 示例debugMessage |
示例message |
|---|---|---|---|
| 400 | 错误的请求 | “请求参数无效:缺少‘user_id’” | “错误的请求” |
| 401 | 401认证失败 | “API 密钥无效或丢失” | “未经授权的访问” |
| 403 | 403访问被拒绝 | “用户缺乏此资源的权限” | “禁止访问” |
| 429 | 429请求过多 | “超出速率限制;请稍等后再重试” | “请求太多” |
| 500 | 500服务器端问题 | “发生意外的服务器错误” | “出了点问题” |
#处理指南
解析错误响应:
- 始终检查响应中是否存在
code、debugMessage和message。 - 使用
code以编程方式处理特定的错误情况。
- 始终检查响应中是否存在
记录和监控:
- 记录
code和debugMessage的所有错误以帮助调试。 - 通过
code监控错误率以识别重复出现的问题。
- 记录
优雅降级:
- 当API调用失败时提供后备机制或用户友好的错误消息。
- 避免应用程序崩溃;基于
code优雅地处理错误。