0

我使用https://www.npmjs.com/package/ssh2-sftp-client库并具有以下工作代码。

async function upload() {

    let sftp = new Client();
    await sftp.connect(config)
        .then(() => {
            return sftp.fastPut('test.txt' , 'test.txt');
        })
        .then(p => {
            console.log(`${p}`);
            return sftp.end();
        })
        .catch(err => {
            console.log(`Error: ${err.message}`); // error message will include 'example-client'
        });
}

upload()

文档中有两件事我不明白。

  1. https://www.npmjs.com/package/ssh2-sftp-client#debugging-support建议我可以将其添加到我的代码中以启用调试,例如
config.debug = msg => {
  console.error(msg);
};

但是,我不知道这应该去哪里。

  1. 文档还建议https://www.npmjs.com/package/ssh2-sftp-client#uploaddirsrcdir-dstdir--string我可以在代码中添加事件侦听器以获取事件。例如
client.on('upload', info => {
    console.log(`Listener: Uploaded ${info.source}`);
  });

但是,我再次无法弄清楚这应该去哪里。

对不起,如果这些愚蠢的问题,但异步编码搞乱我的大脑。

4

1 回答 1

0

对于调试,您可以将其添加到连接配置(您没有列出)

就像是

sftp.connect({
                host: 'hostNAME',
                port: '22',
                username: "USERNAME",
                password: "PASSWORD",
                debug: console.log
            }).then(() => {
于 2020-05-01T13:48:12.530 回答