VSCode如何配置插件市场镜像

1,279 阅读1分钟

背景

这其实是件很扯淡的事

因为VSCode的插件市场

一没有被墙

二支持离线安装

那还有这个需求吗?

但确实有。。。

我这里是完全的内网环境

离线安装虽然可以

但是多少有点麻烦。。。

毕竟要在两台机子之间不停的切换

而且有违规的风险

偶然

一次偶然逛内网论坛

发现有个哥们挂了一个一键配置内网插件市场.exe

我运行了一下

在内网环境下就能搜索插件市场了!

只是安装插件以后

访问插件的主页

怎么这么奇怪

我们正常在外网访问插件市场

https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.vscode-dotnet-runtime

但是我在内网访问

就变成了

https://xxx.xxx.com/items?itemName=xxxx

发现

而且哪怕是通过外网下载,离线安装的,访问也是内网域名

那就有意思了

说明这个一定是通过某些方式读取配置的

疑惑

实话实说

我通过搜索关键词 vscode 插件市场 源 镜像等关键词

在Bing/百度/google都搜不到内容

很想知道具体是什么

机缘巧合

机缘巧合之下

多方打听

发现一个配置文件

在安装目录下(或者Windows用户也可以使用everything

找到production.json

# 以下为我的本机路径

D:\SoftWare\VSCode\Microsoft VS Code\resources\app\product.json

用vscode打开

其中有个配置项为

"extensionsGallery": {
		"nlsBaseUrl": "https://www.vscode-unpkg.net/_lp/",
		"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery",
		"itemUrl": "https://marketplace.visualstudio.com/items",
		"publisherUrl": "https://marketplace.visualstudio.com/publishers",
		"resourceUrlTemplate": "https://{publisher}.vscode-unpkg.net/{publisher}/{name}/{version}/{path}",
		"controlUrl": "https://az764295.vo.msecnd.net/extensions/marketplace.json"
},

只需要修改其中的serviceUrl itemUrl resourceUrlTemplate

为你的内网地址配置

(其实我研究了一下,应该就是一个网关把流量代理出去了)