Подобно этому вопросу , мы разрабатываем веб-приложение, в котором клиент нажимает кнопку, чтобы получить PDF с сервера. Прямо сейчас мы используем метод .ajax () с jQuery для POST-данных, необходимых бэкенду для генерации PDF (мы отправляем XML) при нажатии кнопки, а затем бэкэнд генерирует PDF полностью в памяти и отправив его обратно как application / pdf в ответе HTTP.
Один ответ на этот вопрос требует от сервера сохранения PDF-файла на диск, чтобы он мог вернуть URL-адрес клиента для GET. Но я не хочу, чтобы бэкенд кешировал контент вообще.
Другой ответ предполагает использование плагина jQuery, но когда вы смотрите на его код, он фактически генерирует элемент form
, а затем отправляет form
. Этот метод не будет работать для нас, так как мы отправляем данные XML в теле HTTP-запроса.
Есть ли способ заставить браузер открывать PDF, не кэшируя PDF-файл на стороне сервера и не требуя от нас выбросить наше решение для отправки данных на сервер с использованием XML?
(Я бы хотел, чтобы браузер вел себя так же, как и при отправке элемента form
- выполняется POST, а затем браузер просматривает заголовок Content-type
, чтобы определить, что делать дальше, например, загрузить PDF в окне браузера, а-ля Safari)