Express提供了一個方便的方法來以附件的形式傳送文件: Response.download()
一旦使用這個方法來傳送文件的路由被用戶訪問,瀏覽器將提示用戶下載。
Response.download()
方法允許您將文件附加到請求中,瀏覽器將把文件保存到磁盤,而不是在頁面上顯示出來。
app.get('/', (req, res) => res.download('./file.pdf'))
在應用程式的上下文中:
const express = require('express')
const app = express()
app.get('/', (req, res) => res.download('./file.pdf'))
app.listen(3000, () => console.log('伺服器準備就緒'))
您可以設定要以自訂文件名發送的文件:
res.download('./file.pdf', 'user-facing-filename.pdf')
該方法提供了一個回調函數,您可以在文件傳送完成後執行代碼:
res.download('./file.pdf', 'user-facing-filename.pdf', (err) => {
if (err) {
//處理錯誤
return
} else {
//執行其他操作
}
})