Преобразование данных в кодировке base 64 в двоичные данные с помощью JavaScript

#javascript #base64 #decode

#javascript #base64 #декодирование

Вопрос:

Когда я запускаю асинхронный вызов на сервер, я получаю данные base64 файла PDF (двоичные данные). Я хочу преобразовать эти данные base64 в двоичные и предоставить пользователю в виде файла со стороны браузера. Я нашел downloadify для загрузки. Но я все еще застрял в части преобразования данных в кодировке base 64 в двоичные данные в JS

Ответ №1:

Зачем конвертировать? 😉 Просто укажите свою ссылку как data:application/pdf;base64, , а затем вы получите файл PDF в кодировке base64.

Конечно, в старом IE это не сработает. Но должно работать в большинстве современных браузеров.

http://en.wikipedia.org/wiki/Data_URI_scheme

Ответ №2:

Даже если вы преобразовали данные base64 в двоичные в javascript (и я нахожу крайне странным, что сервер вообще это сделает — сначала просто отправьте двоичные данные), вы не сможете сгенерировать ссылку для скачивания в javascript.

Поэтому нет смысла писать код преобразования.

Попросите сервер отправить двоичные данные напрямую с соответствующими Content-Type: Content-Disposition: заголовками и .

Возможно, вы даже сможете добавить Content-Encoding: base64 заголовок, и браузер преобразует его самостоятельно.