Обработка ASP.NET MVC FileResult, возвращенного в (jQuery) вызове Ajax

Цель:
Я хочу, чтобы мои пользователи загружали файл на мою веб-страницу. Я хочу, чтобы открылось новое окно, и файл там отображался или загружался.

Моя реализация:
Однако этот файл сначала нужно сгенерировать на стороне сервера, что может занять некоторое время. Когда пользователь нажимает кнопку для загрузки файла, я выполняю вызов ajax и показываю анимацию ожидания, пока не получу ответ. Действие контроллера, которое обрабатывает вызов, сгенерирует файл (PDF) и вернет FileResult. Теперь, используя функцию success моего обратного вызова ajax в javascript, я получаю данные файла.

Проблема: Я понятия не имею, что мне делать с этими данными, чтобы передать их пользователю.

Обходной путь:
Сейчас я использую обходной путь, при котором я не возвращаю файл в вызове ajax, а сохраняю его в сеансе. В успешной функции я выполняю window.open ("/ controller / getPDFFromSession") , который загружает файл. Однако я предпочитаю не использовать сеанс для подобных вещей.

Заранее спасибо.

8
задан Doruk 22 September 2016 в 12:48
поделиться