0

Busboy からファイル ストリームを取得しています。次に、バイト数を数え、最初の行を取得して、Azure ストレージに送信する必要があります。約 25MB までのファイルで機能しますが、それ以降はすべてのバイトがカウントされません。待たせる方法がわかりません。最初の行を取得する間、元のデータを保持するためだけにパススルー ストリームを使用しています。

busboy
.on('file', function(fieldname, file, filename, encoding, mimetype) {
    file
    .on('data', function(data) {
        bytes = bytes + data.length;
    })
    .on('end', function() {
        console.log("end");
    })
    .pipe(passthrough)
    .pipe(firstLine)
    .pipe(es.wait(function (err, body) {
        blobService.createBlockBlobFromStream(containter, name, passthrough, bytes, function (error, result) {
            if(error) {
                return sendResponse(error.toString(), res, null);
            }
            sendResponse(null, res, "done");
        });
    }));
})
.on('finish', function() {
    console.log("busboy done");
});
4

1 に答える 1