javascript - 无法使用 npm 中的 "ftp"包连接到 ftp 服务器

标签 javascript node.js npm ftp node-ftp

我正在尝试使用包 "ftp" 连接到安全的 FTP 服务器

当我连接到不安全的服务器时,代码工作正常并且所有事件都没有问题地引发并且我看到了内容。

但只要我尝试使用帐户和密码连接到服务器,就不会引发任何事件并且控制台日志中也没有任何内容(没有错误),服务器就会继续运行。 p>

我尝试了多个端口,22 是正确的,因为在其他端口上它在启动时出错。

我尝试了 secure: true/false 但它没有帮助我。

const Client = require("ftp");
const fs = require("fs");

let config = {
  host: "10.2.22.22",
  user: "test",
  password: "pass",
  port: 22
};

var c = new Client();
c.on("ready", function() {
  c.list(function(err, list) {
    if (err) throw err;
    console.dir(list);
    c.end();
  });
});
c.on("greeting", function() {
  console.log("greeting");
});
c.on("close", function() {
  console.log("close");
});
c.on("end", function() {
  console.log("end");
});

c.connect(config);

这是所有不会改变的控制台输出:

Mac | util-> nodemon ftpUpload.js 
[nodemon] 1.18.7
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node ftpUpload.js`

一段时间后我注意到

end
close

被解雇了,但没有别的。有谁知道问题出在哪里?

最佳答案

端口 22 是 SSH 的默认端口。您可以使用 SFTP 协议(protocol)通过 SSH 传输文件。

SFTP 与 FTP 不同(也与 FTPS(FTP + SSL 或 TLS)不同)。

您需要使用支持 SFTP 的模块,例如 ssh2 .

关于javascript - 无法使用 npm 中的 "ftp"包连接到 ftp 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56842226/

相关文章:

javascript - JSON 响应被捕获所有 URL 破坏并作为 404 页面返回

Node.js 应用程序 - 将 mongodb 集成到 appfog 中

javascript - 使用 Node oracle-db npm 包时出现 ORA-12514 错误

javascript - 将 react 应用程序部署到 netlify 时缺少构建脚本错误

javascript - 当有多个 http URL 时使用正则表达式获取 http URL

javascript - 通过 mapbox gl js 向 mapbox 中的 map 添加一些基本标记

node.js - NPM模块在/node_modules文件夹下却找不到?

node.js - Sass-loader 与 Webpack、React 和 Babel 不工作

javascript - 谷歌电子表格 : Assign a script to a button with parameters

javascript - $resource 回调并保存值