Javascript 无法使用nodejs建立到FTP服务器的连接
我目前正在尝试使用nodeJS libJavascript 无法使用nodejs建立到FTP服务器的连接,javascript,node.js,ftp,ftp-client,Javascript,Node.js,Ftp,Ftp Client,我目前正在尝试使用nodeJS libbasic FTP连接到FTP服务器。似乎已建立连接,但在尝试访问服务器后,我无法执行单个操作,甚至无法输出log语句。然后,代码会超时。。我可以使用Windows CMD ping命令从本地环境ping服务器 const ftp = require("basic-ftp") example() async function example() { const client = new ftp.Client(timeout =
basic FTP
连接到FTP服务器。似乎已建立连接,但在尝试访问服务器后,我无法执行单个操作,甚至无法输出log
语句。然后,代码会超时。。我可以使用Windows CMD ping命令从本地环境ping服务器
const ftp = require("basic-ftp")
example()
async function example() {
const client = new ftp.Client(timeout = 30000)
client.ftp.verbose = true
try {
await client.access({
host: "10.xxx.xx.xx",
port: 2222,
user: "xxx",
pass: "xxxx",
secure: true
})
console.log("CONNECTED");
console.log(await client.ensureDir("/PATH/"));
console.log(await client.list('/PATH/'));
}
catch (err) {
console.log(err)
}
client.close()
}
输出:
Connected to 10.xxx.xx.xxx:2222 (No encryption)
< SSH-2.0-WS_FTP-SSH_8.5.0
Error: Timeout (control socket)
at Socket.<anonymous> (C:\Users\xxx\dev\nodejs\ftpTest\node_modules\basic-ftp\dist\FtpContext.js:316:58)
at Object.onceWrapper (events.js:299:28)
at Socket.emit (events.js:210:5)
at Socket._onTimeout (net.js:469:8)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)
连接到10.xxx.xx.xxx:2222(无加密)
几乎没有任何输出可以帮助我识别问题。我可以使用WinSCP建立连接
是否有人知道什么可能导致问题,需要采取哪些步骤来确定什么可能导致此问题
非常感谢
编辑:
可能是缺少某种密钥交换吗?使用WinSCP时,我必须单击是 我试图使用该软件包连接到我的FTP服务器,但密码错误,尽管我肯定使用了正确的密码。我自己从节点上进行FTP,但我使用的是迄今为止工作完美的方法。@ChrisG是否可以在该库中使用代理?您是否尝试过在主动和被动连接模式之间切换?不确定如何在node.js中执行此操作,可能类似于“ftp.Passive=true;”?还想知道您正在使用的非默认端口设置是否正确?