VSCode无法连接虚拟机,报错“XHR failed“,手动部署VSCode Server

1、背景

想用vscode远程调试虚拟机中代码,vscode怎么也连接不上虚拟机,一直报错"XHR failed";用xshell工具或cmd命令行都可以ssh连接成功的,说明虚拟机端没有问题。

AI回复"当前报错XHR failed是VSCode 本地下载 Server 包时网络请求失败,本质是本地 VSCode 无法从官方服务器下载对应版本的 Server 文件",
建议用离线安装vscode server,强制跳过下载步骤,试了下可行。

【经过此步骤也有了解学习到vscode和虚拟机建立连接时步骤】

通过 Remote - SSH 插件连接远程 Linux 虚拟机时,本地(Windows)的VSCode 会:

1、检测远程主机是否已安装对应版本的 VS Code Server;

2、如果没有,本地 VS Code 会从微软官方服务器下载一个匹配当前 VS Code 客户端版本的 VS Code Server 压缩包(如 vscode-server-linux-x64.tar.gz);

3、然后通过 SSH 将该压缩包上传到远程主机,并解压、启动。

4、vscode客户端和vscodeserver建立连接

2、步骤

1、进入虚拟机,删除文件,命令如下

bash 复制代码
rm -rf ~/.vscode-server

2、查看本地VSCode版本

打开 VSCode → 帮助 → 关于 → 复制版本号(到txt文本中)

3、下载对应Server包(替换版本号和系统架构,虚拟机是 Linux 的话选linux-x64)

bash 复制代码
https://update.code.visualstudio.com/commit:${版本号}/server-linux-x64/stable

本文:(将url粘贴到浏览器中下载对应包)

bash 复制代码
https://update.code.visualstudio.com/commit:7db1a2b88f7557e0a43fec75b6ba7e50b3e9f77e/server-linux-x64/stable

4、将下载的vscode-server-linux-x64.tar.gz上传到虚拟机

5、虚拟机中执行:创建目录

bash 复制代码
mkdir -p ~/.vscode-server/bin/[提交id]

本文:

bash 复制代码
mkdir -p ~/.vscode-server/bin/7db1a2b88f7557e0a43fec75b6ba7e50b3e9f77e

6、虚拟机中执行:解压

bash 复制代码
tar -zxvf vscode-server-linux-x64.tar.gz -C ~/.vscode-server/bin/[提交id] --strip-components 1

本文:

bash 复制代码
tar -zxvf vscode-server-linux-x64.tar.gz -C ~/.vscode-server/bin/7db1a2b88f7557e0a43fec75b6ba7e50b3e9f77e --strip-components 1

7、虚拟机中执行:创建0大小的0文件(让 VSCode 识别为已安装)

bash 复制代码
touch ~/.vscode-server/bin/[提交id]/0

本文:

bash 复制代码
touch ~/.vscode-server/bin/7db1a2b88f7557e0a43fec75b6ba7e50b3e9f77e/0


8、重新连接,连接成功

相关推荐
初雪云5 小时前
UniApp 云打包拿到 IPA 后,真正的发布工作才刚开始
ios·自动化·编辑器·产品经理·iphone
慧都小项6 小时前
组件改名,引用同步更新:WebStorm的重构能力用在哪里?
ide·重构·webstorm
幸运小圣1 天前
Buffer 新手入门【Node.js】
node.js·编辑器·vim
*wait for?1 天前
VScode使用uv-创建python虚拟环境
ide·vscode·编辑器
lzx_0021 天前
Linux 开发工具(二) 简单认识一下编辑器 —— vim
linux·编辑器·vim
意法半导体STM321 天前
【官方原创】LAT1724 STM32CubeIDE for VSCode 修改链接文件中的起始地址无效?
vscode·stm32·单片机·嵌入式硬件·mcu·stm32cube
超级大福宝2 天前
VS Code Remote-SSH 因 RemoteForward 端口冲突导致连接失败的排查与解决
运维·服务器·windows·vscode·ssh
MandalaO_O3 天前
IDEA 开发(快捷键 + 调试 + 序列化)
java·ide·intellij-idea
golang学习记3 天前
VSCode AI完成任务的仪式感:撒礼花
ide·vscode·编辑器
菜_小_白4 天前
codex
linux·vscode·ai