Генерация пустого PDF-файла из ответа в nodejs - PullRequest
5 голосов
/ 18 марта 2019

Я получаю ответ от вызова axios ниже:

Нажмите здесь, чтобы загрузить ответ (PDF)

Когда я пытаюсь сгенерировать PDF сверху, ссылка на ответ PDF генерируется с пустыми страницами

var fs = require('fs');
fs.writeFileSync("12345678.pdf", response.data, 'binary');

Axios Call:

const url = 'url-here'

const headers = {
    'headers-here'
  };
const axiosConfig = {
    headers,
  };

axios.get(url, axiosConfig)
    .then((response) => {

     var fs = require('fs');
     fs.writeFileSync("12345678.pdf", response.data, 'binary'); 

     callback(null, response.data);
      })
      .catch((error) => {
        logger.error(error.stack || error.message || error);
        callback(error, null);
});

Может кто-нибудь помочь мне создать правильный PDF?

1 Ответ

1 голос
/ 19 марта 2019

Правильное значение responseType в конфигурации запроса axios должно быть установлено на stream, а также pipe при получении ответа в поток.

axios({ 
  method:'get', 
  url: 'someUrl', 
  responseType: 'stream' // #1 
}) 
.then(function (response) { 
  response.data.pipe(fs.createWriteStream('12345678.pdf')) // #2
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...