最有效解法是同时配置settings.json中的extensions.gallery.serviceUrl与cacheUrl为微软中国镜像地址,并彻底退出VSCode所有进程后重启;仅配serviceUrl在1.83+版本无效,且两URL须同域、路径结尾不带斜杠。

直接改 settings.json 里的 extensions.gallery.serviceUrl
这是最常用、也最有效的插件市场加速方式。VSCode 插件安装卡在“正在加载”或“正在安装”,99% 是因为默认请求 marketplace.visualstudio.com,国内直连常 TLS 握手超时或 DNS 解析失败。
打开命令面板(Ctrl+Shift+P),输入并运行 Preferences: Open Settings (JSON),在用户设置 JSON 中添加以下两行(注意逗号分隔,且必须放在已有配置的同一对象内):
{
"extensions.gallery.serviceUrl": "https://vscode.cdn.azure.cn/_apis/public/gallery",
"extensions.gallery.cacheUrl": "https://vscode.cdn.azure.cn/_apis/public/gallery/publishers"
}
关键点:
-
serviceUrl和cacheUrl必须同时配置,缺一不可;VSCode 1.83+ 版本起,只配前者会被忽略 - 两个 URL 必须同域,路径结尾不能带
/(比如写成.../gallery/会拼接出错,返回 404) - 别用已失效的旧镜像,如
vscode.bj.bcebos.com(百度 BOS 镜像近年已不稳定) - 配置必须写在**用户 settings**(全局),写在工作区 settings 里不生效
改完不生效?一定是没彻底退出 VSCode 进程
VSCode 后台有常驻的 Code Helper 进程,它缓存着旧的市场地址。哪怕你保存了 settings.json,只要这些进程还在跑,新配置就完全不会加载。
必须手动彻底退出:
- Windows:右键任务栏图标 → 「退出」;再打开任务管理器,结束所有
Code.exe和Code Helper.exe进程 - macOS:打开「活动监视器」,搜索并强制退出全部
Code和Code Helper进程 - Linux:执行
pkill -f "code"或手动 kill 所有相关进程
重启后,可按 Ctrl+Shift+P → Developer: Toggle Developer Tools,切到 Console 标签,再点一次安装插件,看网络请求是否已变成 vscode.cdn.azure.cn 开头。
code --install-extension 命令仍失败?环境变量和代理干扰
命令行安装插件失败(报 connect ETIMEDOUT 或卡在 pending),往往不是镜像配置错了,而是终端启动的 VSCode 进程没继承你的设置,或者被系统代理劫持。
- 确保在运行命令前设好环境变量:
VSCODE_EXTENSIONS_MSA_URL=https://vscode.cdn.azure.cn code --install-extension esbenp.prettier-vscode - 如果本地开了 Clash、Surge 等代理工具,即使没开全局模式,也可能影响 HTTPS 请求;临时关闭代理再试,或显式禁用:
code --proxy-settings=off --install-extension ... - 某些插件(如
ms-python.python)会额外下载语言服务器二进制包,这部分走的是独立域名(如github.com或vscode.blob.core.windows.net),镜像源对其无效——只能离线下载或配代理
自动更新插件还是慢?product.json 必须同步改
插件市场的手动安装和搜索走 settings.json,但**自动更新提示和后台下载新版包**,读的是 VSCode 安装目录下的 product.json 文件。不改它,每次弹窗提示更新后,点击“立即更新”依然会回源海外 CDN。
找到对应路径并编辑:
- Windows:
C:Users\AppDataLocalProgramsMicrosoft VS Code esourcesppproduct.json - macOS:
/Applications/Visual Studio Code.app/Contents/Resources/app/product.json
搜索 extensionsGallery,把其中的 serviceUrl 和 cacheUrl 字段值,全部替换成和 settings.json 里一致的地址(即 https://vscode.cdn.azure.cn/_apis/public/gallery 和 https://vscode.cdn.azure.cn/_apis/public/gallery/publishers)。
这个文件需要管理员权限才能保存,改完重启 VSCode 才生效。很多用户只改了 settings 却漏掉这一步,结果发现中文语言包能装上,但下次提示更新时又卡住——就是这里没动。


















