Как преобразовать BLOB в файл PDF в среде Node? - PullRequest
1 голос
/ 16 апреля 2020

У меня есть сервер Node Js, на котором я получаю данные BLOB-объектов из другого веб-сервиса (который предназначен для PDF-файла), теперь, получив BLOB-объект, я хочу снова преобразовать его в PDF-файл.

Любой, кто знает, как этого добиться, пожалуйста, помогите.

Вот мой блок кода, который я пробовал до сих пор:

const fetch = require('node-fetch');
const Blob = require('fetch-blob');
const fs = require('fs');

fetch(url, options)
   .then(res => {
      console.log(res);
      res.blob().then(async (data) => {

         const result = data.stream();
         // below line of code saves a blank pdf file
         fs.createWriteStream(objectId + '.pdf').write(result);
      })
   })
   .catch(e => {
      console.log(e);
   });

1 Ответ

0 голосов
/ 16 апреля 2020

Точки модификации:

  • Для fs.createWriteStream(objectId + '.pdf').write(data), пожалуйста, измените res.blob() на res.buffer().
  • Пожалуйста, измените .then(res => {res.blob().then() на .then(res => res.buffer()).then(.

Модифицированный скрипт:

fetch(url, options)
  .then(res => res.buffer())
  .then(data => {
    fs.createWriteStream(objectId + '.pdf').write(data);
  })
  .catch(e => {
    console.log(e);
  });

Примечание:

  • В этой модификации предполагается, что процесс выборки с использованием url и options работает нормально.

Ссылки:

...