Manjaro 21.0.7系统中VS Code无法连接扩展市场CORS报错如何解决
Manjaro系统VS Code扩展市场CORS报错解决方案
报错含义
你遇到的是Electron内核的跨源资源共享(CORS)拦截报错:
当前你使用的是Manjaro官方源内置的Code - OSS(VS Code开源编译版本),默认配置的扩展市场为Open VSX,本次请求Open VSX接口时,服务端没有返回Access-Control-Allow-Origin跨域许可头,本地请求被内核直接拦截,因此无法正常加载扩展列表。
修复方法
- 方案一:替换扩展市场配置
用root权限编辑Code的产品配置文件,路径为/usr/lib/code/product.json,找到extensionsGallery字段,替换为以下内容:
"extensionsGallery": { "serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery", "cacheUrl": "https://vscode.blob.core.windows.net/gallery/index", "itemUrl": "https://marketplace.visualstudio.com/items" }
修改完成后完全关闭VS Code进程再重新启动即可,注意系统升级Code包后配置会被覆盖,需要重新修改。
- 方案二:安装微软官方编译的VS Code版本
通过AUR安装官方预编译版本,执行命令:yay -S visual-studio-code-bin
该版本默认使用微软官方扩展市场,不会触发Open VSX的CORS报错。 - 方案三:临时启动绕过CORS限制(不推荐长期使用)
启动时添加禁用网络安全参数即可正常访问:code --disable-web-security
该方案会降低VS Code的网络安全等级,仅适合临时测试使用。
内容的提问来源于stack exchange,提问作者Daniel Bäuerlein
相关产品推荐
相关产品推荐

