Как сохранить файл в формате PDF, если я получаю тип содержимого приложения-потока ответа Axios? - PullRequest
0 голосов
/ 01 июня 2019

Я хотел бы сохранить данные типа потока октетов в файл PDF, данные верны, поскольку я пытался использовать функцию Postman «Отправить и сохранить», чтобы успешно получить и открыть файл PDF.

Однако, как только я вызываю запрос axios и получаю ответ от сервера, я не могу получить правильный файл PDF.После того, как я получил файл pdf, кажется, что файл поврежден, я не могу открыть его правильно.

Вот заголовок ответа: введите описание изображения здесь

        axios.create({
        baseURL: link,
        timeout: 60000,
        headers: {
            Authorization: token
        }
    }).post(apiUrl, {
        .
        .
        .
    }).then(res=>{
        var file_data = res["data"];
        var file_type = res["headers"]["content-type"];
        var blob = new Blob([file_data], {type: file_type});
        saveAs(blob, "Test.pdf")
    });

1 Ответ

0 голосов
/ 07 июня 2019

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

axios.create({
    baseURL: link,
    timeout: 60000,
    responseType: 'blob'
    headers: {
        Authorization: token
    }
}).post(apiUrl, {
    .
    .
    .
}).then(res=>{
    var file_data = res["data"];
    var file_type = res["headers"]["content-type"];
    saveAs(file_data, "Test.pdf");
});
...