我試圖在我的NodeJS服務器上創建文件下載功能時遇到了一些意外的行爲。 我有一個REST(express)API調用一些導出數據函數,它在服務器上創建一個CSV文件並使用res.download('path/to/file')
觸發下載。 響應標題包括內容處置:附件不觸發下載對話框
Content-Disposition:attachment; filename="indicators.csv"
Content-Length:30125
Content-Type:text/csv; charset=UTF-8
所以一切似乎都是按順序的。
事情是,我從服務器獲取純文本的響應。響應包含CSV文件包含的所有數據,但不會像我打算的那樣觸發瀏覽器的文件下載對話框。 我在Chrome和FF上都嘗試過。這個問題依然存在於兩者中。
任何想法?
更新
我設法讓它通過創建一個虛擬的形式,並使用其提交的行動使我AJAX調用工作。但這是一個醜陋的黑客攻擊,我仍然在尋找更優雅的解決方案。
正如你可以看到我的問題,選項1是我最終使用。但我必須承認,對我而言,選項2可能是更優雅的解決方案。 – yarons 2015-09-01 05:19:23