使用vscode时,我们为了方便修改远程文件,会是用vscode里的sftp插件,但是有的服务器使用ftp模式链接时,显示列表会很缓慢,一般是10秒的等待时间.尤其是使用windows+FileZilla Server更容易出现这个问题.解决办法看下面.
1.打开设置->输入sftp->勾选sftp:debug,打开sftp的调试模式,重启vscode
2.按ctrl+shift+u 打开输出面板,最好是先清空一下日志,重新保存一下sftp.json.
[06-30 14:28:13] [info] config at server
{"remotePath":"/",
"uploadOnSave":true,
"downloadOnOpen":false,
"protocol":"ftp",
"connectTimeout":10000,
"host":"*******",
"port":**,
"username":"******",
"password":"******",
}
[06-30 14:38:43] [debug] < '227 Entering Passive Mode \r\n'
[06-30 14:38:53] [debug] > NOOP
[06-30 14:38:53] [debug] < '200 OK\r\n'
3.我们可以看到当sftp执行Entering Passive Mode 进入被动模式时,显示一个错误并且等待了10秒钟.那就很无语了,你一个错误,让我等10秒,耽误多少时间.
4.我们可以看到输出台输出的配置文件中有"connectTimeout":10000,意思是超时时间,那就好办了
5.看我的配置
{
"name":"服务器",
"host":"服务器ip",
"protocol":"ftp",
"port":21,
"username":"账号",
"password":"密码",
"remotePath":"/",
"uploadOnSave":true,
"connectTimeout":300,
"ignore":["**/.vscode/**","**/.git/**","**/.DS_Store","image/*","img/*"],
"watcher":{"files": "*","autoUpload":false,"autoDelete":false}
}
6.我们在设置项中添加"connectTimeout":300,设置超时时间,我的是设置为300毫秒,这里需要你根据自己服务器的网速来设置,可以先从1秒钟慢慢往下调.这样问题就临时解决了,还是希望插件作者能改进一下.