【问题标题】:Uploading on a FTP server NodeJS : Error在 FTP 服务器 NodeJS 上上传:错误
【发布时间】:2018-06-13 14:24:49
【问题描述】:

我正在使用https://github.com/mscdex/node-ftp 在 FTP 服务器上上传文件。这是我的代码:

    const Client = require('ftp');

    console.log('CONNECTING...')
    const c = new Client();
    c.on('ready', function () {
        console.log('READY');
        c.put('test.csv','test.remote-copy.csv',function (err) {
            if (err) { console.log('PUT err : ' + err); };
            c.end();
        });
    });
    // connect to ftp server
    c.connect({
        host: "my-adress",
        port: 22,
        user: "my-user",
        password: "my-pass",
        debug: console.log
    });
    console.log(c);

在 c 的日志中,配置设置得很好,但说连接错误,但是我在 FileZilla 上使用完全相同的用户名/密码,它工作正常:

 options: 
{ host: 'my-address',
  port: 22,
  user: 'my-user',
  password: 'my-pass',
  secure: false,
  secureOptions: undefined,
  connTimeout: 10000,
  pasvTimeout: 10000,
  aliveTimeout: 10000 },
connected: false,
_events: { ready: [Function] },
_eventsCount: 1 }

【问题讨论】:

  • 函数 connect() 不是同步的。因此,如果您登录下一行,您不能期望 c.connected 为真。问题是什么?没有调用日志“READY”的行?
  • 是的,控制台中没有显示就绪,但我发现了我的错误,非常感谢您的帮助:)

标签: javascript node.js server ftp


【解决方案1】:

我刚刚发现自己的错误并感到白痴,只是我使用了一个ftp包但我的服务器是SFTP。如果您有同样的问题,请使用此软件包,它可以完美运行:https://www.npmjs.com/package/ssh2-sftp-client

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-05
    相关资源
    最近更新 更多