React Node Скачать файл - PullRequest
       6

React Node Скачать файл

0 голосов
/ 13 января 2020

Узел :

try {
    const file = `Invoice#4585.pdf`;
    res.download(file);
    console.log('download completed');


} catch (error) {
    console.log(error)
}

Это работает в почтальоне, проблема при вызове API от реакции

Реакция :

const response = yield call(fetch, "url", {
    method: "GET",
    headers: {
        "Content-Type": "application/json",
        "Accept": "application/json"
    }
});

Я получаю ошибку на стороне реакции SyntaxError: Неожиданный токен% в JSON в позиции 0

1 Ответ

0 голосов
/ 13 января 2020

Схема ответа, вероятно, не в . json я думаю. Это может быть blob

Объект Blob представляет собой файловый объект неизменяемых необработанных данных; они могут быть прочитаны как текстовые или двоичные данные

попробуйте это:

fetch(`http://localhost:4000/pdf`, {
  method: "GET",
  headers: {
    "Content-Type": "application/pdf"
  }
})
  .then(res => res.blob())
  .then(response => {
    //Create a Blob from the PDF Stream
    console.log(response);
    const file = new Blob([response], {
      type: "application/pdf"
    });

  })
  .catch(error => {
    console.log(error);
  });

Вы также можете конвертировать PDF -> JSON на внутренней стороне:

https://www.npmjs.com/package/pdf2json

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