Skip to content

错误处理 ​

API 使用标准 HTTP 状态码表示请求结果。排错时先保留状态码、错误响应和请求 ID,再修改配置;不要只根据客户端弹出的简短提示判断原因。

先确认 Base URL 为 https://nexly.guangnian.xin,并且使用的是 Nexly API 控制台创建的 Key。

最小诊断流程 ​

遇到问题时按以下顺序检查,可以快速区分 Key、模型和业务参数问题。

1. 检查服务与认证 ​

bash
curl -i https://nexly.guangnian.xin/v1/models \
  -H "Authorization: Bearer $NEXLY_API_KEY"
  • 返回 200:服务地址和 Key 基本正常,继续检查模型与业务请求。
  • 返回 401:优先检查 Key 和请求头格式。
  • 返回 403:检查 Key 权限、有效期和账号状态。
  • 返回 HTML:可能请求到了登录页、反向代理或错误域名。

2. 检查模型 ​

确认请求的 model 与 /v1/models 返回的 id 完全一致。模型列表能查询成功,但指定模型仍可能不支持当前接口。

3. 缩小请求 ​

暂时移除工具调用、图片、结构化输出、自定义参数和长上下文,只发送一条纯文本消息。如果最小请求成功,再逐项恢复参数。

常见状态码 ​

状态码常见原因建议处理方式是否重试
400参数类型错误、模型不支持参数对照 API Reference,缩小请求否
401Key 无效或 Bearer 格式错误检查 Key、空格和环境变量否
403权限不足、Key 过期或账号受限检查权限、有效期和账号状态否
404路径错误、模型或协议不存在检查 /v1、模型 ID 和接口类型否
408请求超时缩短输入或稍后重试是
429频率、并发或额度限制查看错误消息、用量与限额条件性
500服务内部错误记录请求 ID,稍后有限重试是
502上游服务异常使用指数退避有限重试是
503服务暂时不可用稍后重试或切换已验证模型是
504上游响应超时减少生成长度或切换模型是

错误响应 ​

错误响应通常包含 message、type 和 code:

json
{
  "error": {
    "message": "Incorrect API key provided",
    "type": "invalid_request_error",
    "code": "invalid_api_key"
  }
}

排错时优先阅读 message,再结合 HTTP 状态码处理。客户端可能隐藏原始响应,可以使用 cURL 复现以查看完整内容。

常见问题定位 ​

出现 /v1/v1 ​

Base URL 和客户端都添加了 /v1。将客户端地址改为 https://nexly.guangnian.xin,或关闭自动拼接版本路径。

/v1/models 成功,但对话返回 404 ​

Key 与服务正常,但模型可能不支持当前协议。检查实际请求是 /v1/chat/completions、/v1/responses 还是 /v1/messages。

非流式正常,流式失败 ​

检查客户端或反向代理是否缓冲 SSE,确认请求设置了 stream: true。使用 cURL 时添加 -N 禁用输出缓冲。

客户端显示网络错误 ​

用同一设备执行最小 cURL 请求。如果 cURL 成功,继续检查客户端代理、证书、Base URL 和路径拼接;如果 cURL 也失败,再检查网络、DNS 和系统时间。

重试策略 ​

只对临时错误进行有限重试:

text
第 1 次:等待约 1 秒
第 2 次:等待约 2 秒
第 3 次:等待约 4 秒

建议加入随机抖动并设置最大重试次数。400、401、403、404 等配置错误不应自动重试。流式请求中断后重新请求可能产生重复内容,业务侧需要自行处理幂等与去重。

反馈问题时提供 ​

  • 请求时间和时区。
  • HTTP 状态码与完整错误响应。
  • 请求接口路径和模型 ID。
  • 响应头中的请求 ID(如果存在)。
  • 使用的 SDK、客户端及版本。
  • 是否经过公司代理、反向代理或 CC Switch 本地路由。

不要提供完整 API Key

反馈问题时请删除 Authorization 请求头,Key 最多只保留末尾 4 位用于区分。

Nexly API · OpenAI 兼容接口服务