0
在我的Express應用程序中,我創建了存儲在MongoDB中的詳細信息的快照。實際的快照文件存儲在_id下的快照文件夾中,例如/snapshots/575fe038a84ca8e42f2372da.png
。連接快速路由參數和文件擴展
這些快照當前可以由用戶通過導航到其瀏覽器中的文件夾和ID(即/snapshots/575fe038a84ca8e42f2372da
)來加載,該文件返回圖像文件。不過,我認爲更直觀的url路徑應該包括文件擴展名;即用戶必須輸入/snapshots/575fe038a84ca8e42f2372da
.PNG
才能獲得該文件。
這是我目前:
router.get('/:shotID', function(req, res, next) {
// Checks if shot exists in DB
Shots.findOne({
_id: req.params.shotID // More conditions might get put here, e.g. user restrictions
}, (err, result) => {
if (err) {
res.status(404).res.end();
return;
}
var file = fs.createReadStream(`./snapshots/${req.params.shotID}.png`);
file.pipe(res);
});
});
我如何可以將用戶投入的文件擴展名這條道路?