如何关闭 SuiteScript 2.0 SFTP 连接?

How can I close a SuiteScript 2.0 SFTP connection?

我正在使用 SuiteScript 2.0 中的 N/sftp 模块,可以成功地将文件发送到我的 SFTP 位置。然而,我在我的 SFTP 位置上遇到了问题,因为来自 NetSuite 的连接似乎从未关闭过。这意味着时不时地,达到我的 SFTP 服务器上的最大连接数并且不允许进一步的连接 - 迫使我重新启动我的 SFTP 服务(在我自己的服务器上)。

这是我的代码:

var connection = sftp.createConnection({
        username: 'username',
        passwordGuid: '123456789',
        url: 'url.server.com',
        hostKey: ''
    });
    //log.error('CONNECTION',connection);

    var myFileToUpload = file.create({
        name: internalID + '.json',
        fileType: file.Type.JSON,
        contents: postData,
        description: 'SO', 
        encoding: file.Encoding.UTF8
    });


    connection.upload({
    directory: username + '/',
    filename: internalID + '.json',
    file: myFileToUpload,
    replaceExisting: false
   });

SuiteScript 文档没有提供任何关闭连接的功能。有办法关闭吗?

如果没有,我正在考虑尝试关闭我的 SFTP 服务上已打开超过一定时间的连接。我不认为这是处理这种情况的最佳方式。对此或替代解决方案的任何输入也将不胜感激。

提前致谢。

当 NS 宣布支持 SFTP 时,大家都很高兴。我报告了你去年写的问题,显然它还没有解决。

这一点,加上 N/sftp 无法列出远程目录中的文件,导致我放弃 N/sftp 作为生产就绪模块。启动外部服务来管理 sftp 连接真的很容易。我使用带有简单不记名令牌的快递和护照来验证入站连接。

我也按计划完成了传输 cron/windows 调度程序作业。

我已经在 AWS Lambda、Azure 和 Heroku 上完成了这项工作。

密钥传输当然是个问题。 AWS 允许您对静态资产进行加密。我的偏好是这样,但没有什么比 Netsuite 对密钥的预期使用更安全的了。