跳转到内容
2api2api 文档
打开控制台

常见问题

Claude Code

Claude Code 接 2api 时最常见的报错和解决办法。

一直要求登录,或提示 Not logged in · Please run /login

Section titled “一直要求登录,或提示 Not logged in · Please run /login”

常见报错还有 Unable to connect to Anthropic services、Claude Code might not be available in your country。原因是首次启动的引导流程没拿到你的配置,去连了官方。

  1. 把 ANTHROPIC_BASE_URL 和 ANTHROPIC_AUTH_TOKEN 写进 ~/.claude/settings.json 的 env(写法见 Claude Code),不要只写在项目目录的 .claude/settings.json 里。
  2. 打开 ~/.claude.json(不是 settings.json),在最外层加 "hasCompletedOnboarding": true。
  3. 重新打开终端启动 claude,输入 /status,能看到 Anthropic base URL 和 Auth token 两行就对了。

提示 Invalid API key · Please run /login,或 API Error: 401

Section titled “提示 Invalid API key · Please run /login,或 API Error: 401”

2api 拒绝了这个 Key。按顺序检查:

  1. 先跑自检命令,如果 curl 也是 401,就是 Key 本身的问题:重新从控制台复制,注意别带空格。
  2. curl 正常而 Claude Code 报错,说明 Claude Code 读到的不是这个 Key。同一个变量在 settings.json 的 env 里和终端 export 里都有时,以 settings.json 为准,检查那里是不是旧 Key。
  3. settings.json 写错格式(有注释、多了逗号)会导致只读到一部分,用 jq . ~/.claude/settings.json 检查。
  4. 短时间内错太多次会被临时限制,提示 Too many invalid authentication attempts,等几分钟再用正确的 Key 试。

提示 Auth conflict,或者设了 Key 不生效

Section titled “提示 Auth conflict,或者设了 Key 不生效”

ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 同时存在,或者之前登录过官方账号。

  • 只保留 ANTHROPIC_AUTH_TOKEN,执行 unset ANTHROPIC_API_KEY,并从 ~/.zshrc、~/.bashrc 或 Windows 环境变量里删掉它。
  • 只用 2api 的话,在 Claude Code 里执行 /logout 退出官方账号。
  • 想换回官方,把 ANTHROPIC_BASE_URL 和两个 Key 变量都删掉。

提示 There’s an issue with the selected model

Section titled “提示 There’s an issue with the selected model”

报错里的模型名你的分组没有。常见是 haiku 这类后台任务用的小模型。用 /v1/models 查到分组里有的模型,再按 Claude Code 页 设置 ANTHROPIC_DEFAULT_HAIKU_MODEL 和 CLAUDE_CODE_SUBAGENT_MODEL。

余额掉得很快,缓存好像没生效

Section titled “余额掉得很快,缓存好像没生效”

老版本 Claude Code 在自定义地址下会让缓存命中率明显下降。先运行 claude update 升级到最新版;还不行就在 settings.json 的 env 里加 "CLAUDE_CODE_ATTRIBUTION_HEADER": "0"。可以在「使用记录」里看缓存相关的列确认效果。

报错类似 Request timed out、No response from API、Server error mid-response。

  • 在 env 里把超时调长:"API_TIMEOUT_MS": "900000"。
  • 回复中途断开时,直接回一句「继续」。
  • 检查代理设置,见网络与报错码。
  • 大请求每次都 504,是服务端超时,请带上时间联系客服。

报 400:Extra inputs are not permitted 或 anthropic-beta 相关

Section titled “报 400:Extra inputs are not permitted 或 anthropic-beta 相关”

在 settings.json 的 env 里加 "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1",重新启动。

WebFetch 报 Unable to verify if domain is safe to fetch

Section titled “WebFetch 报 Unable to verify if domain is safe to fetch”

Claude Code 抓网页前会先去官方做一次检查,网络连不上官方时就会失败。在 ~/.claude/settings.json 的最外层(不是 env 里面)加上 "skipWebFetchPreflight": true。

换了 Key 或服务商后,每次都报 Invalid signature in thinking block

Section titled “换了 Key 或服务商后,每次都报 Invalid signature in thinking block”

会话历史里留着别的上游签名的思考内容。执行 /clear 或者新开一个会话。

Claude Code 没装上,或者安装路径还没生效。运行 irm https://claude.ai/install.ps1 | iex 安装,然后重新打开 PowerShell,再执行 claude --version。

见 Claude Code 插件,在编辑器设置里加 claudeCode.environmentVariables 和 claudeCode.disableLoginPrompt。