gpt4 book ai didi

node.js - NodeJS SFTP 获取 zip 文件

转载 作者:太空宇宙 更新时间:2023-11-04 00:01:24 24 4
gpt4 key购买 nike

尝试使用 SFTP 从服务器获取一组 zip 文件。这是试图仅获取单个文件的简化代码片段:

var fs = require('fs');
let Client = require('ssh2-sftp-client');
let sftp = new Client();
sftp.connect({
host: 'ftp.domain.com',
port: '22',
username: 'username',
password: 'password'
}).then(() => {
sftp.get("fileName.zip").then((data) => {
data.pipe(fs.createWriteStream('download/fileName.zip'));
}).catch((err) => {
console.log(err, 'get error');
});
}).catch((err) => {
console.log(err, 'connect error');
});

我确实下载了一个文件,但虽然服务器上的文件约为 1.4 MB,但下载的文件为 2.5 MB,并且无法使用任何 zip 实用程序打开。我怀疑这是一个编码问题,但到目前为止我找到的所有答案都说设置二进制流的编码。

最佳答案

图书馆的 github 页面上有关于此问题的开放问题 -> Corrupt file on the SFTP

您可以尝试将编码实际设置为 null:

sftp.get("fileName.zip", null, null).then(...)

关于node.js - NodeJS SFTP 获取 zip 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54577868/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com