2016-02-26 25 views
1

我試圖發送一個圖像在瀏覽器中全屏顯示,但問題是下面的代碼強制文件作爲附件發送(下載),類似於res.download()而不是顯示圖像:res.sendFile強制文件被下載

res.sendFile(file, {root: path.join(__dirname, '../storage')}) 

有顯示未做強制其下載或不讀取原始文件圖像的方法嗎?

回答

4

我發現問題是該文件沒有任何文件擴展名。由於res.sendFile()嘗試自動設置內容類型標題,因此導致文件下載而不是顯示的問題。

如果文件沒有文件擴展名,你可以手動設置Content-Type頭爲res.sendFiel()像這樣:

res.sendFile(file, {headers: {'Content-Type': 'image/jpeg'}}) 

這將導致正確顯示圖像。