Скачать PDF файл из бэкэнда - PullRequest
0 голосов
/ 10 мая 2019

Моя задача - прочитать файл PDF в бэкэнде и отправить клиенту в кодированном формате с соответствующими заголовками ответа для загрузки файла на стороне клиента.

Я использую лямбда-прокси-интеграцию со шлюзом AWS API, и у меня есть экспресс-сервер в этом сценарии. Я могу загрузить PDF из почтальона при использовании пользовательской лямбда-интеграции с API-шлюзом, но когда я использую прокси-интеграцию, она загружает мне пустой файл содержимого PDF.

В обоих случаях я отправляю двоичные данные от шлюза API к клиенту. Но в пользовательской интеграции я изменил этот параметр в консоли шлюза API, включив обработку содержимого до CONVERT_TO_BINARY. Но в прокси я сделал это из кода и отправил двоичный файл на клиентскую сторону.

file = fs.readFileSync('/tmp/statistics.pdf');
var base64 = file.toString('base64');
var buff = new Buffer(base64, 'base64');
var binary = buff.toString('binary');
res.writeHead(200, {
    'Content-Type': 'application/pdf',
    'Content-Disposition': 'attachment; 
     filename="statistics.pdf"'
});
res.end(binary);

Это мой пример кода отправки данных со шлюза API на клиентскую сторону. Пожалуйста, помогите мне разобраться в этом. Я очень запутался в этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...