VSCode插件市场“重试中”或卡0%主因是网络链路不稳定,需同时配置serviceUrl和itemUrl且末尾带斜杠,否则404静默重试;改配置后必须彻底退出所有Code进程才生效。

VSCode插件市场反复“重试中”或卡在 0% / 安装中断,90% 以上是网络链路不稳定导致的请求半途断开,不是插件本身问题,也不是 VSCode 坏了。
为什么 serviceUrl 配置后还是重试失败?
常见错误是只改了 extensions.gallery.serviceUrl,但漏配配套 URL 或格式有误。VSCode 扩展系统实际会并发请求多个端点:服务根地址、插件详情页、发布者列表、缓存清单——缺一不可。
- 必须同时配置
serviceUrl和itemUrl,否则部分插件页面能打开但点击安装就触发重试 - 所有 URL 末尾必须带斜杠
/(例如"https://vscode.cdn.azure.cn/extensionGallery/extensionGallery/"),少这个会返回 404,VSCode 不报错,只默默重试 - 若用
open-vsx.org源,itemUrl必须显式写为"https://open-vsx.org/vscode/item",不能省略 - Windows 用户注意路径分隔符不影响 JSON,但复制粘贴时容易混入全角字符或换行,建议手动敲一遍
重试时控制台报 ERR Failed to fetch 是哪一层断了?
打开命令面板运行 Developer: Toggle Developer Tools,切到 Network 标签页,再点一次“安装”。观察失败请求的 Status 和 Timing:
-
Status: (failed) net::ERR_CONNECTION_TIMED_OUT→ DNS 解析或 TLS 握手超时,优先换镜像源或关代理软件的 TUN 模式 -
Status: 404→ URL 路径错误(最常见于漏斜杠或域名拼错) -
Status: 0且Timing显示stalled超过 30 秒 → 本地安全软件拦截(如 360、腾讯电脑管家静默丢包),非网络问题 -
Status: 200但响应体为空或极小 → 镜像源未同步该插件,需手动下载.vsix
手动安装 .vsix 仍提示 “Download failed” 怎么办?
这不是网络问题,而是 VSCode 在校验阶段拒绝加载——常见于文件损坏、签名不匹配或引擎版本越界。
- 用解压工具打开
.vsix(本质是 ZIP),确认根目录有package.json,且其中engines.vscode字段值 ≤ 当前 VSCode 版本(比如你用1.90.0,插件写"^1.92.0"就会被拒) - 检查文件大小:官方扩展的
.vsix通常 ≥ 50KB;若小于 10KB,基本是下载被截断,重下 - 双击安装无反应?说明系统没把
.vsix关联到 VSCode,改用命令面板执行Extensions: Install from VSIX,手动选文件 - 报
Signature verification failed?关闭设置里的extensions.experimental.affinity(某些旧版插件签名不兼容新策略)
重启 VSCode 后依然重试,是不是没生效?
VSCode 的扩展市场配置是进程级加载的,**改完 settings.json 后仅关闭窗口无效,必须彻底杀掉所有 Code 进程**。
- Windows:任务栏右键 VSCode 图标 → 选择「退出」;或打开任务管理器,结束所有名称含
Code、Code Helper的进程 - macOS:Activity Monitor 中搜索
Code,强制退出全部;别只关窗口,Dock 上图标还在就代表进程活着 - Linux:终端执行
pkill -f "code",再ps aux | grep code确认无残留 - 验证是否生效:启动后按
Ctrl+Shift+P输入Extensions: Show Installed Extensions,如果列表能刷出来且顶部显示「来自 vscode.cdn.azure.cn」之类字样,说明源已切换成功
最容易被忽略的是:企业网络环境下,即使配置了正确镜像源,某些终端管控工具也会对 CDN 域名做深度 HTTPS 检查,并因证书链不完整直接终止连接——此时只有离线安装或联系 IT 部门放行特定域名才真正有效。


















