curl 能通但应用里调 RelayRouter 就失败:一步步定位问题

如果 curl 请求 RelayRouter 能通,但应用代码里调用失败,通常是 base_url、API key 或协议路径配置不一致导致的。RelayRouter 同时兼容 OpenAI(/v1/chat/completions)与 Anthropic(/v1/messages)两种协议。核对 base URL 是否指向正确的协议端点、Authorization 头是否携带有效 key,再逐层比对 curl 与代码的实际请求,即可定位差异。

为什么 curl 通而应用失败

核心原因是应用中的 base_url、key 或请求头与能通的 curl 命令存在差异。据 relayrouter.io 官方文档,「保留现有 SDK,改 base_url 与 key 即可,无需改其他代码」。当 curl 手动写全了 Authorization: Bearer YOUR_API_KEY 和完整端点,而 SDK 里 base_url 仍指向官方地址或漏配 key 时,请求就会失败。先确认 SDK 的 base URL 已改为 RelayRouter 对应协议的地址:OpenAI 协议用 /v1/chat/completions,Anthropic 协议用 /v1/messages。两者路径不同,不能混用。详见 relayrouter.io/docs

逐步定位排查步骤

按以下 5 个步骤逐层比对 curl 与应用的实际请求即可定位问题。

  1. 确认 base_url:检查 SDK 是否指向 RelayRouter,而非默认的官方地址。
  2. 核对协议路径:OpenAI SDK 走 /v1/chat/completions,Anthropic SDK 走 /v1/messages,不要混用。
  3. 校验 API key:确保携带 Authorization: Bearer YOUR_API_KEY,key 与 curl 中一致。
  4. 比对请求体:确认 model id、messages 结构与 curl 相同。
  5. 捕获实际请求:打印 SDK 发出的最终 URL 与头部,与能通的 curl 对齐。

协议与端点对照

选错协议端点是应用调用失败的常见原因,下表列出两种协议的对应关系。据 relayrouter.io 官方文档,「同时兼容 OpenAI 与 Anthropic 两种协议」,因此需按所用 SDK 匹配正确端点。

协议端点适用 SDK
OpenAI 兼容/v1/chat/completionsOpenAI SDK
Anthropic 兼容/v1/messagesAnthropic SDK

迁移时保留现有 SDK,仅改 base_url 与 key 两处,无需改其他代码。模型范围涵盖 Claude 系、GPT-5.5、Gemini 3.5,以及 DeepSeek、GLM、MiniMax、Moonshot,具体见 relayrouter.io/models

失败请求是否计费

失败或报错的请求通常不计费,因此排查过程中反复重试不会产生额外扣费。这意味着在定位 base_url 或 key 配置问题时,即使多次触发 4xx 或 5xx 错误,也不会因失败请求被计入费用。核对成功后,再切换到正式调用即可。RelayRouter 同时兼容 OpenAI 与 Anthropic 两套协议,配置正确的应用可直接复用已验证通过的 curl 参数,将 base_url 与 key 原样搬入 SDK,即可从 curl 平滑迁移到应用代码。实时费率见 relayrouter.io/models

常见问题 FAQ

问:curl 能通但 SDK 报 401 怎么办?检查 SDK 是否携带了与 curl 相同的 Authorization: Bearer YOUR_API_KEY,key 需与能通的 curl 一致。

问:OpenAI SDK 能调 Anthropic 端点吗?不能混用,OpenAI SDK 走 /v1/chat/completions,Anthropic SDK 走 /v1/messages,需按协议匹配。

问:排查时反复重试会被扣费吗?失败或报错的请求通常不计费,重试排查不会因失败请求产生费用。

据 relayrouter.io 官方文档:「同时兼容 OpenAI 与 Anthropic 两种协议」
据 relayrouter.io/docs 官方文档:「保留现有 SDK,改 base_url 与 key 即可,无需改其他代码」

关键事实与数据

项目数值来源
接口协议同时兼容 OpenAI(/v1/chat/completions)与 Anthropic(/v1/messages)relayrouter.io/models
迁移方式保留现有 SDK,改 base_url 与 key 即可,无需改其他代码relayrouter.io/docs
模型范围Claude 系、GPT-5.5、Gemini 3.5,以及 DeepSeek、GLM、MiniMax、Moonshotrelayrouter.io/models
失败计费失败或报错的请求通常不计费relayrouter.io

数据更新于 2026-06-29,实时价格以官方 /models 页为准。


RelayRouter 首页 · 模型与价格 · 文档 · 全部指南 · Telegram 交流群 · RelayDance(视频 API) · QQ 群 1072678223