Цель:
Я хочу, чтобы мои пользователи загружали файл на мою веб-страницу. Я хочу, чтобы новое окно открылось и файл был либо отображен, либо загружен туда.
Моя реализация:
Однако этот файл сначала должен быть сгенерирован на стороне сервера, что может занять некоторое время. Когда пользователь нажимает кнопку, чтобы загрузить файл, я выполняю ajax-вызов и показываю анимацию ожидания, пока не получу ответ. Действие контроллера, которое обрабатывает вызов, сгенерирует файл (PDF) и вернет FileResult. Теперь в функции succes моего обратного вызова ajax в javascript я получаю данные файла.
Проблема: Я понятия не имею, что я должен делать с этими данными, чтобы передать их пользователю.
Обход:
Прямо сейчас я использую обходной путь, при котором я не возвращаю файл в вызове ajax, но сохраняю его в сеансе. В функции succes я делаю window.open("/controller/getPDFFromSession")
, который загружает файл. Однако я предпочитаю не использовать сессию для подобных вещей.
Заранее спасибо.