VSCode扩展安装失败主因是网络问题而非插件本身,国内用户常因DNS污染或连接重置无法访问marketplace.visualstudio.com;需正确配置http.proxy、http.proxyStrictSSL及http.proxyBypassList(含*.visualstudio.com),或改用onDemand代理模式、终端禁用代理启动、手动下载vsix离线安装。

VSCode 扩展安装失败,绝大多数情况不是插件本身的问题,而是网络请求被拦截、超时或代理配置错误——尤其是国内用户直连 marketplace.visualstudio.com 基本不可行。
为什么 vscode 无法访问扩展市场
VSCode 默认通过 HTTPS 直连微软官方扩展市场,但该域名在国内常被 DNS 污染或连接重置。你看到的错误通常包括:
Unable to load extensions. Please check your internet connection.Failed to fetch extension list- 点击安装后进度条卡住,几秒后提示“Install failed”
这些都不是本地环境问题,而是客户端根本没发出去请求,或发出去了但没收到响应。
检查并修正 http.proxy 和 http.proxyStrictSSL
VSCode 的代理设置不继承系统或浏览器设置,必须显式配置。打开设置(Ctrl+, 或 Cmd+, ),搜索以下两项:
-
http.proxy:填入你的 HTTP 代理地址,例如http://127.0.0.1:7890(Clash)或http://127.0.0.1:10809(v2rayN) -
http.proxyStrictSSL:如果代理是自签名证书(如某些企业代理或本地 mitm 工具),设为true;否则保持false(默认)
⚠️ 注意:http.proxy 必须带协议头(http://),不能只写 127.0.0.1:7890,否则 VSCode 会静默忽略。
绕过代理或强制走直连的三种方法
有些代理工具不转发 marketplace.visualstudio.com,或转发后证书校验失败。此时可手动指定直连:
- 在设置中搜索
http.proxySupport,改为onDemand,再配合http.proxyBypassList -
http.proxyBypassList填入:["localhost", "127.0.0.1", "*.microsoft.com", "*.visualstudio.com"] - 更彻底的方式:终端启动 VSCode 并禁用代理:
no_proxy="*" code --disable-gpu --no-sandbox
其中 "*.visualstudio.com" 是关键,它让所有子域名(含 marketplace.visualstudio.com)跳过代理直连。
手动下载 .vsix 安装作为备用方案
当网络策略极其严格(如公司防火墙完全屏蔽外部 HTTPS 请求)时,可离线安装:
- 用浏览器打开
https://marketplace.visualstudio.com/items?itemName=ms-python.python(替换为你需要的扩展 ID) - 点击右上角
Download Extension,得到一个xxx-1.2.3.vsix文件 - VSCode 中按
Ctrl+Shift+P→ 输入Extensions: Install from VSIX...→ 选择该文件
注意:部分扩展依赖其他扩展(如 Pylance 依赖 Python 扩展),需一并下载安装,顺序不能错。
最常被忽略的是 http.proxyBypassList 没加通配符,或写了 marketplace.visualstudio.com 却漏了 *.visualstudio.com——后者才覆盖所有子域名。代理配置不是“开了就能用”,得看它到底放行了哪些请求。










