ssh2-sftp-client を使用して CSV ファイルを読み取り、ReadableStream を作成しています。次に、csvtojson ライブラリを使用して、この readableStream を Json に変換しようとしています。ただし、常に次のエラーが発生します。
TypeError: readStream.pipe は関数ではありません
これまでの私のコードは次のとおりです。
let Client = require('ssh2-sftp-client');
let sftp = new Client();
var csv = require("csvtojson");
sftp.connect({
host: 'HOST',
port: 'PORT',
username: 'USERNAME',
password: 'PASSWORD'
}).then(() => {
return sftp.get('/home/user/etc/testfile.csv');
}).then((data) => {
csv()
.fromStream(data)
.subscribe(function (jsonObj) { //single json object will be emitted for each csv line
// parse each json asynchronousely
return new Promise(function (resolve, reject) {
resolve()
console.log(jsonObj);
})
})
}).catch((err) => {
console.log(err, 'catch error');
});
私が両方のライブラリを正しく使用しているかどうか、または私が達成しようとしていることが不可能かどうかを誰かが知っていますか?