Gunzip буфер и запись в файл - PullRequest
2 голосов
/ 19 января 2020

Я читаю файл из AWS S3, где я хранил сжатый файл, а в Nodejs я создаю конечную точку для загрузки, распаковки и записи в файл для его обслуживания. Я использую Nodejs модуль Zlib для распаковки, но я получаю эту ошибку при распаковке. Я получаю данные из AWS как буфер в data.Body

Error decompressing::  Error: incorrect header check
    at Zlib.zlibOnError [as onerror] (zlib.js:168:17) {
    errno: -3,
    code: 'Z_DATA_ERROR'

Код для распаковки:

S3Client.getObject(params, (err, data) => {
    if(err) {
        error('Error getting Object:: ', err);
    } else {
        zlib.gunzip(data.Body, (err, buff) => {
            if(err) {
                error('Error decompressing:: ', err);
            } else {
                fs.writeFileSync('folder/'+name+'.mht', buff);
            }
        })
    }
})
...