Я пытаюсь загрузить файл pdf с сервера узла на клиент реагирования, но когда я его открываю, он отображается пустым - PullRequest
0 голосов
/ 18 мая 2019

Я просто читаю данные из файла с узла и отправляю тип контента как "application / pdf".

Версия моего узла - 10.

serverside.js:

var file = path.join(__dirname,'Rajesh.pdf');
fs.readFile(file, function(err, data){
    res.contentType("application/pdf");
    res.send(data)
})

clientside.js:

axios.get('/api/downloadcv')
      .then(res => {
        const url = window.URL.createObjectURL(new Blob([res.data]
          ,{type: "application/pdf"}))
        var link = document.createElement('a');
        link.href = url;
        link.setAttribute('download', 'resume.pdf');
        document.body.appendChild(link);
        link.click();
      })

PDF загружается, но ничего не показывает, когда я открыл его с Vs Code, он показал мне что-то вроде этого:

%PDF-1.4 %äüöß 2 0 obj <</Length 3 0 R/Filter/FlateDecode>> stream x��\K�d�m������n�u�F���Ad�d

1 Ответ

1 голос
/ 18 мая 2019

Просто добавьте responseType в качестве заголовка со значением arraybuffer.Вы должны быть хорошими, чтобы пойти.

axios.get('/api/downloadcv', {responseType: 'arraybuffer'})

Надеюсь, что помогает !!!

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