跳到主要内容

CC-017:WebFetch 工具报错,目标网站可访问但仍失败

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

问题现象

Claude Code 调用 WebFetch 工具抓取网页时报错,表现为搜索失败或联网功能异常,但手动用浏览器访问目标网站完全正常,代理也已开启全局模式。


根因分析

Claude Code 调用 WebFetch
→ 抓取目标页面前先向 claude.ai 发起预检请求
→ 请求地址:https://claude.ai/api/web/domain_info?domain=目标域名
→ 国内网络 / 企业防火墙拦截 claude.ai
→ 预检失败
→ WebFetch 整体报错,目标页面从未被实际请求

关键点:即使目标网站可以访问,只要claude.ai本身被拦截,预检就会失败,导致 WebFetch 完全不可用。全局代理若未正确处理claude.ai的请求,同样触发此问题。


修复步骤

第一步:打开~/.claude/settings.json

平台路径
WindowsC:\Users\<USERNAME>\.claude\settings.json
macOS / Linux~/.claude/settings.json

第二步:添加skipWebFetchPreflight字段

{
"skipWebFetchPreflight": true
}

若文件中已有其他字段,合并写入:

{
"env": {
"ANTHROPIC_BASE_URL": "https://duoapi.zeabur.app",
"ANTHROPIC_API_KEY": "sk-xxx"
},
"skipWebFetchPreflight": true
}

第三步:重启 Claude Code

claude

重启后 WebFetch 跳过预检,直接请求目标页面。


预防措施

做法避免的问题
初次配置时在settings.json中写入"skipWebFetchPreflight": true国内网络环境下 WebFetch 默认不可用
代理切换后若 WebFetch 再次失败,优先检查此字段是否存在误以为是代理或网络问题反复排查