Программно сделать epub в движке приложений? - PullRequest
0 голосов
/ 10 июля 2020

Я разрабатываю веб-службу в стандартной среде App Engine с Java (сервлетами). Идея в том, чтобы получить информацию. из облака SQL и программно сгенерировать EPUB с помощью библиотеки epub Siegmann: http://www.siegmann.nl/epublib

Но я не уверен, как можно добавлять такие вещи, как изображения или html файлы ( Сначала я конвертирую информацию. из Cloud SQL в HTML), sicen автору epub нужен путь к файлам.

могу ли я сначала загрузить все необходимые ресурсы в локальном каталоге движка приложения и ссылки на них? Или что я могу сделать?

Заранее спасибо и извините за мой Engli sh.

1 Ответ

0 голосов
/ 13 июля 2020

Вариант 1:

Вы можете использовать каталог /tmp вашего экземпляра App Engine для хранения временных файлов. См. Ссылку .

Помните, что файлы, хранящиеся в папке /tmp, будут доступны только в экземпляре, который их написал.

Вариант 2 :

После беглого просмотра библиотеки epub Siegmann, я увидел, что ресурсы могут быть предоставлены как байтовые массивы , а писатель заполняет OutputStream .

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

В этот Java образец из документации , вы можете видеть, что объект загружен без необходимости его сохранения в файловой системе, просто передавая его как массив байтов.

И для загрузки файлов из облачного хранилища в память вашего App Engine App, вы можете использовать storage.get(BlobId.of(bucketName, objectName)).getContent(), чтобы получить массив байтов объекта

...