8
目標:
我不想讓我的用戶下載在我的網頁文件。我想要打開一個新窗口並將文件顯示或下載到那裏。處理一個ASP.NET MVC FileResult在(jQuery的)的Ajax調用返回
我的實現:
這個文件但是,首先必須在服務器端生成,這可能需要一段時間。當用戶點擊按鈕下載文件時,我會做一個ajax調用並顯示一個等待的動畫,直到我收到響應。處理該調用的控制器操作將生成文件(PDF)並返回FileResult。現在在javascript中我的ajax回調函數的成功,我得到了文件數據。
問題:我不知道我應該如何處理這些數據以獲得它給用戶。
解決方法:
現在我使用的替代方案,我不回在Ajax調用的文件,但它存儲在會話。在成功的功能中,我做window.open("/controller/getPDFFromSession")
這將下載文件。但是,我寧願不使用會話來處理這些事情。
在此先感謝。
謝謝您的回答有其
src
屬性指向自己生成的文件@Matthijs Wessels,只需將'Content-Disposition'標題設置爲'attachment; filename = test.pdf'並且不會發生。用戶將被提示保存文件。 – 2011-05-18 05:55:47
@DarinDimitrov你能否進一步解釋一下爲什麼我們應該避免使用AJAX進行文件上傳?謝謝.. – 2016-10-10 08:03:22