VSCODE使用Remote-SSH连接Linux服务器报`XHR Failed`错误解决办法

问题

使用VScode连接Linux服务器时,报了以下错误
XHR Failed

原因

vscode连接服务器时,会在被连接端(即要连接的Linux服务器)创建.vscode-server目录,并在里面下载vscode需要的相关文件。
这里无法连接是因为vscode无法正常下载服务文件。

知道原因了,就可以开始下载vscode所需要的服务文件。

解决办法

基本步骤

  • 查阅vscode的commit_id
  • 下载vscode服务文件压缩包
  • 文件放到~/.vscode-server/bin/commit_id/内
  • vscode重新连接服务器
查阅vscode的commit_id
  • 方法1:vscode的菜单栏->帮助->关于。可以看到vscode的commit_id
    commit_id
  • 方法2:vscode即使连接失败,也会在服务器的~/.vscode-server/bin目录下创建相关的commit_id信息,目录名即为commit_id
    commit_id_2
下载vscode服务文件压缩包
  • 目前网上查阅的主要下载方法,是使用https://vscode.cdn.azure.cn/stable/COMMIT_ID/vscode-server-linux-x64.tar.gz并替换其中的COMMIT_ID下载,但是多次尝试后发现,该链接无法正常下载需要的压缩包,会出现下图错误。
    uri_error
    继续查阅相关错误,可以发现:
    “Visual Studio Code官方团队换了新的更新网址,现在https://vscode.cdn.azure.cn不能用了,新的网址是https://http://vscode.download.prss.microsoft.com”

所以,这里我们不再使用https://vscode.cdn.azure.cn开头的网址下载压缩包,替换为:
https://vscode.download.prss.microsoft.com/dbazure/download/stable/COMMIT_ID/vscode-server-linux-x64.tar.gz
需要注意的是,要把里面的COMMIT_ID替换为自己使用的

上面的下载网址可以直接复制到浏览器下载;也可以使用wget下载
wget_download

文件放到~/.vscode-server/bin/commit_id/内
  • 使用sftp或者scp将压缩包推到链接的服务器上,这里使用scp
    scp
    基本用法为:scp file user@remote_server_addr:path
    file:要传送的文件
    user:登录服务器的用户
    remote_server_addr:服务器ip地址
    path:要传送到的路径

  • tar -xzvf vscode-server-linux-x64.tar.gz解压文件
    解压后会得到vscode-server-linux-x64文件夹,将该文件夹内部的所有文件放到~/.vscode-server/bin/COMMIT_ID内。例如我的COMMIT_ID为f1b07bd25dfad64b0167beb15359ae573aecd2cc,则最终效果为:
    vscode-server

vscode重新连接服务器

最后重新使用vscode的remote-ssh插件链接服务器即可,链接过程这里不再细说。

参考链接:

  1. 解决 Windows 端 VS Code “无法与 “…“ 建立连接:XHR failed.” 问题
  2. 解决Visual Studio Code 更新后一直卡在下载vscode-server问题的方法 非常感谢这个大佬!!
  • 32
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值