Я загружаю PDF из стороннего API.Тип содержимого ответа application/octet-stream
.После этого я загружаю его на S3, но если я перехожу на S3 и загружаю вновь записанный файл, содержимое не отображается, страницы остаются пустыми, просматриваются в Chromium и Adobe Acrobat.Файл также не является нулевым байтом и имеет правильное количество страниц.
Использование двоичной кодировки дает мне размер файла, ближайший к фактическому размеру файла.Но это все еще не точно, это немного меньше.
Запрос API (с использованием модуля request-promise
):
import { get } from 'request-promise';
const payload = await get('someUrl').catch(handleError);
const buffer = Buffer.from(payload, 'binary');
const result = await new S3().upload({
Body: buffer,
Bucket: 'somebucket',
ContentType: 'application/pdf',
ContentEncoding: 'binary',
Key: 'somefile.pdf'
}).promise();
Кроме того, загрузка файла из Postman также приводит к созданию файла с пустыми страницами.Кто-нибудь знает, где я иду не так?