首页 教程 分类 Skills下载 关于
ZH EN JA KO
故障排查

OpenClaw API连接错误排查完整指南

· 16 分钟

前言

OpenClaw 需要与各种 AI 模型提供商的 API 通信。在使用过程中,你可能会遇到各类连接错误。本文将系统性地介绍每种错误的原因和解决方案,帮助你快速定位并修复问题。

一、快速诊断工具

在排查之前,先使用 OpenClaw 内置的诊断工具:

# 运行综合诊断
openclaw doctor

# 查看实时日志中的错误
openclaw logs | grep -i "error\|fail\|timeout"

# 测试 API 连接
curl -v https://api.anthropic.com/v1/messages \
  -H "x-api-key: YOUR_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-4-20250514","max_tokens":10,"messages":[{"role":"user","content":"hi"}]}'

二、HTTP 错误码详解

2.1 401 Unauthorized — 认证失败

症状:

Error: API request failed with status 401: Invalid API key

原因和解决方案:

可能原因 解决方案
API Key 错误或已过期 重新生成 Key 并更新配置
Key 格式不完整 检查是否有多余空格或换行
使用了错误提供商的 Key 确认 Key 与提供商匹配
环境变量未生效 重启 OpenClaw 使配置生效
# 检查配置文件中的 API Key
cat ~/.config/openclaw/openclaw.json5 | grep -i "key\|token"

# 确保 Key 格式正确(以 Anthropic 为例,应以 sk-ant- 开头)
# 更新后重启
openclaw restart

2.2 403 Forbidden — 权限不足

症状:

Error: API request failed with status 403: Permission denied

常见原因:

  • API Key 没有对应模型的访问权限
  • 账户未开通某些模型的使用资格(如 Claude Opus)
  • IP 地址被 API 提供商封禁
  • 所在地区不在服务范围内
# 检查是否是 IP 限制问题
curl -s https://api.anthropic.com/v1/messages \
  -H "x-api-key: $API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -w "\n%{http_code}" 2>&1

# 如果使用代理,确认代理配置正确
echo $HTTP_PROXY
echo $HTTPS_PROXY

2.3 429 Too Many Requests — 速率限制

症状:

Error: Rate limit exceeded. Please retry after 30 seconds.

各提供商的速率限制参考:

提供商 免费额度 基础限制 高级限制
Anthropic 60 RPM 4000 RPM
OpenAI 60 RPM 10000 RPM
Groq 30 RPM 无限制
Deepseek 60 RPM 600 RPM

解决方案:

// ~/.config/openclaw/openclaw.json5
{
  "rateLimiting": {
    // 全局请求间隔(毫秒)
    "minInterval": 1000,
    // 速率限制时的重试策略
    "retry": {
      "enabled": true,
      "maxRetries": 3,
      "backoffMultiplier": 2,
      "initialDelay": 5000
    }
  }
}

2.4 500 Internal Server Error — 服务器内部错误

处理方式:

# 这通常是提供商侧的问题,检查服务状态页面
# Anthropic: https://status.anthropic.com
# OpenAI: https://status.openai.com

# 配置备用模型自动切换
// ~/.config/openclaw/openclaw.json5
{
  "models": {
    "primary": {
      "provider": "anthropic",
      "model": "claude-sonnet-4-20250514"
    },
    "fallback": {
      "provider": "openai",
      "model": "gpt-4o"
    }
  }
}

2.5 502/503 Bad Gateway / Service Unavailable

症状:

Error: 502 Bad Gateway
Error: 503 Service Unavailable - The server is temporarily overloaded

排查步骤:

# 1. 确认是否为提供商服务故障
curl -s -o /dev/null -w "%{http_code}" https://api.anthropic.com/v1/messages

# 2. 检查本地网络是否正常
ping api.anthropic.com
traceroute api.anthropic.com

# 3. 如果使用反向代理,检查代理是否正常
nginx -t
systemctl status nginx

三、超时问题排查

3.1 连接超时

Error: connect ETIMEDOUT 104.18.0.1:443
# 测试与 API 端点的连接
curl -v --connect-timeout 10 https://api.anthropic.com/v1/messages

# 如果连接超时,可能需要配置代理
// ~/.config/openclaw/openclaw.json5
{
  "proxy": {
    "enabled": true,
    "url": "http://127.0.0.1:7890",
    // 或使用 SOCKS5 代理
    // "url": "socks5://127.0.0.1:1080"
  },
  "timeout": {
    "connect": 30000,    // 连接超时 30 秒
    "request": 120000    // 请求超时 120 秒
  }
}

3.2 请求超时

当模型生成长文本时,可能会超过默认超时时间:

// 增加超时时间
{
  "timeout": {
    "request": 300000  // 5分钟
  }
}

四、DNS 解析失败

症状:

Error: getaddrinfo ENOTFOUND api.anthropic.com
Error: querySrv ESERVFAIL _http._tcp.api.openai.com

解决方案:

# 1. 检查 DNS 解析
nslookup api.anthropic.com
dig api.anthropic.com

# 2. 尝试使用公共 DNS
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 1.1.1.1" | sudo tee -a /etc/resolv.conf

# 3. 手动添加 hosts 记录(临时方案)
echo "104.18.0.1 api.anthropic.com" | sudo tee -a /etc/hosts

# 4. 测试修复后的解析
nslookup api.anthropic.com

五、SSL 证书错误

症状:

Error: unable to verify the first certificate
Error: self signed certificate in certificate chain
Error: CERT_HAS_EXPIRED

排查和解决:

# 1. 检查证书信息
openssl s_client -connect api.anthropic.com:443 -servername api.anthropic.com </dev/null 2>/dev/null | openssl x509 -noout -dates

# 2. 更新系统 CA 证书
# Ubuntu/Debian
sudo apt update && sudo apt install -y ca-certificates
sudo update-ca-certificates

# CentOS/RHEL
sudo yum install -y ca-certificates
sudo update-ca-trust

# 3. 如果是代理的中间人证书问题
# 将代理的 CA 证书添加到 Node.js 信任列表
export NODE_EXTRA_CA_CERTS=/path/to/proxy-ca.crt

警告:永远不要在生产环境设置 NODE_TLS_REJECT_UNAUTHORIZED=0,这会完全禁用 SSL 验证,存在严重安全风险。

六、代理配置问题

6.1 HTTP 代理

// ~/.config/openclaw/openclaw.json5
{
  "proxy": {
    "enabled": true,
    "url": "http://127.0.0.1:7890"
  }
}

6.2 环境变量方式

# 在系统环境中设置
export HTTP_PROXY=http://127.0.0.1:7890
export HTTPS_PROXY=http://127.0.0.1:7890
export NO_PROXY=localhost,127.0.0.1

# 重启 OpenClaw
openclaw restart

6.3 代理连通性测试

# 通过代理测试 API 访问
curl -x http://127.0.0.1:7890 -v https://api.anthropic.com/v1/messages

# 测试 SOCKS5 代理
curl -x socks5://127.0.0.1:1080 -v https://api.anthropic.com/v1/messages

七、各提供商专项排查

7.1 Anthropic (Claude)

# 验证 API Key 有效性
curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-4-20250514","max_tokens":5,"messages":[{"role":"user","content":"test"}]}'

常见问题:API Key 格式为 sk-ant-api03-...,注意不要与 OpenAI 的 Key 混淆。

7.2 OpenAI (GPT)

# 验证 API Key
curl https://api.openai.com/v1/chat/completions \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-4o","messages":[{"role":"user","content":"test"}],"max_tokens":5}'

常见问题:免费额度用完后会返回 429 错误,需要绑定付费方式。

7.3 Ollama(本地模型)

# 检查 Ollama 服务是否运行
curl http://localhost:11434/api/tags

# 确认模型已下载
ollama list

# 测试模型调用
curl http://localhost:11434/api/generate \
  -d '{"model":"llama3","prompt":"test","stream":false}'

常见问题:Ollama 默认只监听 localhost,如果 OpenClaw 在其他机器需要设置 OLLAMA_HOST=0.0.0.0

7.4 OpenRouter

curl https://openrouter.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $OPENROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"anthropic/claude-sonnet-4-20250514","messages":[{"role":"user","content":"test"}]}'

八、错误排查检查清单

遇到 API 连接错误时,按以下顺序排查:

1. ✅ 运行 openclaw doctor 查看诊断结果
2. ✅ 确认 API Key 正确且未过期
3. ✅ 检查网络连接(ping、curl)
4. ✅ 确认代理配置正确(如果使用代理)
5. ✅ 检查 DNS 解析是否正常
6. ✅ 验证 SSL 证书是否有效
7. ✅ 查看提供商服务状态页面
8. ✅ 检查速率限制是否触发
9. ✅ 查看 openclaw logs 中的详细错误信息
10. ✅ 尝试直接用 curl 调用 API 排除 OpenClaw 本身问题

掌握这些排查技巧,你就能快速定位并解决绝大多数 API 连接问题,保持 OpenClaw 服务的稳定运行。

OpenClaw 是开源免费的个人AI助手,支持 WhatsApp、Telegram、Discord 等多平台接入