HALO 在实用的情况下保留与提供商兼容的错误信封,并返回用于身份验证和选定支付流程的稳定的机器可读代码。
#错误形状
{
"error": {
"message": "Invalid API Key",
"type": "invalid_request_error",
"code": "invalid_api_key"
}
}#状态代码
| 状态 | 含义 | 默认操作 |
|---|---|---|
| 400 | 无效的负载、重定向、范围、模型或合同 | 修复请求 |
| 401 | 缺少凭证或所需证明 | 验证;不要盲目重试 |
| 403 | 无效的凭据或被阻止的资源 | 停止并检查策略 |
| 402 | 需要付款 | 结算或添加余额,然后重试 |
| 409 | 状态或部署冲突 | 刷新状态并按照代码操作 |
| 429 | 使用或身份验证速率限制 | 后退 |
| 500 | 意外的服务器故障 | 仅在幂等时重试 |
| 503 | 所需的依赖项或容量不可用 | 抖动后后退 |
#重试策略
- 重试 GET 请求并具有有限退避的显式幂等操作。
- 不要盲目重放一次性授权码、刷新令牌或付款证明。
- 流式请求需要应用程序级处理,因为部分响应可能已经到达客户端。
- 尊重
Retry-After