VSCode插件市场连不上主因是代理配置不当:应设HTTP_PROXY/HTTPS_PROXY环境变量(非VSCODE_PROXY_SUPPORT),且需确保启动方式继承变量、协议头正确、代理服务运行正常。

VSCode 插件市场连不上,不是你网络有问题,大概率是 VSCode 默认走系统代理但没配好,或者被本地防火墙/公司网络策略拦截了——直接改环境变量比折腾代理配置更稳。
为什么设置 VSCODE_PROXY_SUPPORT 没用?
这个环境变量根本不存在,VSCode 官方不认它。网上很多教程抄来抄去,误把 Electron 或其他工具的变量名套到 VSCode 上。真正起作用的是系统级代理环境变量,VSCode 启动时会读取它们:
-
HTTP_PROXY和HTTPS_PROXY(区分大小写,Linux/macOS 下必须全大写) -
NO_PROXY用于跳过本地地址,比如localhost,127.0.0.1,.internal - Windows 用户注意:
http_proxy小写也能生效,但建议统一用大写避免兼容问题
VSCode 启动方式决定环境变量是否生效
在终端里用 code 命令启动 VSCode,它会继承当前 shell 的环境变量;但如果你是双击图标或从开始菜单启动,它通常不加载 shell 配置(比如 ~/.zshrc 或 ~/.bash_profile),变量就失效了。
- macOS:把
export HTTPS_PROXY=https://127.0.0.1:7890加到~/.zprofile(不是.zshrc),然后运行code --new-window测试 - Windows:在「系统属性 → 高级 → 环境变量」里添加系统变量,重启资源管理器或重装 VSCode 启动器
- Linux(GNOME):在
~/.profile中设置,然后注销再登录,或用env | grep -i proxy确认是否加载
代理地址填错导致“连接超时”而非“连接拒绝”
VSCode 插件市场请求走的是 HTTPS,所以 HTTPS_PROXY 必须明确指定 https:// 或 http:// 协议头。只写 127.0.0.1:7890 会导致请求卡住,表现为“正在加载扩展”或控制台报 ERR_CONNECTION_TIMED_OUT。
- Clash、Sing-Box 等工具默认监听
127.0.0.1:7890(HTTP 代理端口),填http://127.0.0.1:7890即可 - 如果代理只开 SOCKS5(如
127.0.0.1:1080),VSCode 不原生支持,必须用privoxy或cntlm转成 HTTP 代理 - 检查代理是否真在运行:
curl -x http://127.0.0.1:7890 https://marketplace.visualstudio.com应返回 HTML 内容
代理配置本身没问题,但 VSCode 的扩展主机(Extension Host)进程有时会缓存旧的网络设置,关掉所有 VSCode 窗口后,手动杀掉残留进程(killall -9 code 或任务管理器结束 Code Helper)再重试,比反复重启更有效。


















