跳到主要内容

CC-016:无效令牌(曾购买过第三方服务后切换)

字段内容
影响组件Claude Code 本体
发现版本不限版本
系统环境Linux / macOS / Windows
解决人
发现日期2026-03-14

问题现象

曾使用过其他第三方中转服务,切换到新服务后,Claude Code 持续返回:

API Error: 401 {"error":{"type":"authentication_error","message":"invalid x-api-key"}}

新配置已正确填写,但错误依旧。


根因分析

旧服务遗留了系统环境变量
→ ANTHROPIC_BASE_URL 指向旧服务地址
→ ANTHROPIC_API_KEY / ANTHROPIC_API_TOKEN 保存旧令牌
→ 环境变量优先级高于配置文件
→ Claude Code 忽略新配置,向旧端点发送旧令牌
→ 旧端点拒绝 → 401 认证失败

修复步骤

Windows 用户

第一步:打开环境变量编辑器

Win + R,输入sysdm.cpl,回车。点击「高级」选项卡 → 「环境变量」。

也可以在任务栏搜索「环境变量」直接打开。

第二步:分别在「用户变量」和「系统变量」中删除以下三个变量

ANTHROPIC_BASE_URL
ANTHROPIC_API_KEY
ANTHROPIC_API_TOKEN

第三步:保存退出,重新打开 cmd 或 PowerShell

claude

如果仍然报错,删除 Claude Code 配置文件:

C:\Users\<USERNAME>\.claude\claude.json
C:\Users\<USERNAME>\.claude\claude.json.backup

删除后重新配置 Base URL 和 API Key(推荐使用 CC Switch)。


macOS / Linux 用户

第一步:编辑 Shell 配置文件

# zsh 用户
vi ~/.zshrc

# bash 用户
vi ~/.bashrc

第二步:找到并删除以下三行(有几行删几行)

export ANTHROPIC_BASE_URL=...
export ANTHROPIC_API_KEY=...
export ANTHROPIC_API_TOKEN=...

第三步:使配置生效

source ~/.zshrc # 或 source ~/.bashrc

第四步:重新打开终端,启动 Claude Code

claude

预防措施

做法避免的问题
切换服务时优先检查并清理旧环境变量旧变量静默覆盖新配置导致认证失败
使用 CC Switch 统一管理配置,减少手动设置环境变量多处配置冲突难以定位
切换完成后执行claude --version验证连通性切换后未及时发现配置冲突