Я использую hapi js 16.1, и когда я пытаюсь загрузить CSV-файл, Content-Length не устанавливается, если для Content-Type установлено значение 'text / csv'
json2csv({
data: structuresResponses.data,
fields
}, (err, csv) => {
const stream = new Stream.Readable();
stream._read = () => {};
stream.push(csv);
stream.push(null);
reply(null, stream).bytes(Buffer.byteLength(csv))
.header('Content-Type', 'text/csv')
.header('Content-Disposition', 'attachment; filename=Responses.csv');
});
})
Заголовки ответа являются
cache-control: no-cache
Connection: keep-alive
content-disposition: attachment; filename=Responses.csv
content-encoding: gzip
content-type: text/csv; charset=utf-8
Date: Tue, 25 Feb 2020 07:10:25 GMT
Transfer-Encoding: chunked
vary: origin,accept-encoding
Но если я установлю тип контента на application / octet-stream, тогда он будет работать
reply(null, stream).bytes(Buffer.byteLength(csv))
.header('Content-Type', 'application/octet-stream')
.header('Content-Disposition', 'attachment; filename=Responses.csv');
Заголовки ответа:
accept-ranges: bytes
cache-control: no-cache
Connection: keep-alive
content-disposition: attachment; filename=Responses.csv
content-length: 46720000
content-type: application/octet-stream
Date: Tue, 25 Feb 2020 07:06:56 GMT
vary: origin
Я бы будь благодарен за любую помощь