Служить PDF-файлу в виде большого двоичного объекта в Google Apps Script - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть скрипт приложений Google, который генерирует файл PDF.Теперь моя цель - передать этот PDF-файл обратно в пользовательский интерфейс, чтобы пользователь мог загрузить или распечатать его.Однако здесь есть ограничение: я не могу перенаправить пользователя на URL-адрес Google Диска - мне нужно, чтобы файл был передан пользователю на той же странице, с которой он был создан.Я видел этот пост , который дает решение для загрузки, но использует ссылку Google Drive.Кроме того, в этой публикации и в этой публикации упоминается загрузка, но она работает только для файлов данного типа, которые не включают PDF.

Я могу сгенерировать PDF и блоб внутри метода doGet, но я не знаю, как передать его в пользовательский интерфейс, чтобы затем пользователь мог взаимодействовать с ним.Есть ли способ передать BLOB-объект во внешний интерфейс, а затем разрешить пользователю загружать или распечатывать этот BLOB-объект в формате PDF?

function doGet(request){    
    var file = generateFile();
    var blob = file.getAs('application/pdf');
    //Goal: return blob to front end so user can download / print
}

1 Ответ

0 голосов
/ 14 мая 2018

Я смог сделать это, передав данные в виде файла в кодировке base64.Я использовал getBytes () , чтобы получить файл в виде массива байтов, а затем base64encode () , чтобы закодировать его перед отправкой во внешний интерфейс.На внешней стороне я использовал вариант этот ответ , чтобы позволить пользователю загрузить файл.

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