Скачать файл Excel Angular 5 - PullRequest
       14

Скачать файл Excel Angular 5

0 голосов
/ 22 апреля 2019

Я пытаюсь загрузить файл Excel из веб-API, который у меня есть, я возвращаю байты, но я предполагаю, что есть какая-то магия сзади, которая преобразует его в Base64.

ладно, в любом случае, в связи с рассматриваемой проблемой, я пытаюсь использовать обнаруженный мной шаблон, который выглядит примерно так:

this.http.get(`${AppConfig.settings.apiServer.url}reports/downloadBillingReport`, requestOptions).subscribe((result:any)=>{

      let body:string = result._body;

      const byteCharacters = window.atob(body);
      const byteNumbers = new Array(byteCharacters.length);

      for (let i = 0; i < byteCharacters.length; i++) {
        byteNumbers[i] = byteCharacters.charCodeAt(i);
      }

      const byteArray = new Uint8Array(byteNumbers);

      let applicationType:string = `application/xlsx`;
      let blob = new Blob([body], { type:  `application/xlsx` } );
      let today = new Date();
      let fileName = `billing-report-${today.toLocaleDateString()}`;
      saveAs(blob, fileName);

    });

, но моя проблема в том, что когда я добираюсь до окна.atob (body) происходит сбой.

ошибка, которую я получаю:

Не удалось выполнить 'atob' в 'Window': декодируемая строка неправильно закодирована.

Не могу понять, почему это происходит.Может кто-нибудь, пожалуйста, помогите мне понять это спасибо!

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