【发布时间】:2014-02-16 23:47:31
【问题描述】:
假设我的 Express.js 应用中有这个路由处理程序:
app.get('/files/:name', function (req, res) {
res.sendfile('path/to/files/' + req.params.name + '.html');
});
此路径在我的网站上通过 Ajax 使用。我想知道是否应该防止服务器上不存在具有请求名称的文件的情况,在这种情况下服务器返回 404 响应。我可以使用它,即检测浏览器中的 404 并采取相应措施(例如向访问者显示一条消息)。但是,我不确定这是否是一个好方法。在这里使用 404 响应是否可以,或者我应该尽可能避免 404 响应。 (例如,如果服务器上存在具有请求名称的文件并且仅使用 .sendFile() 如果存在,我可以这样做。)
我担心执行手动检查只会减慢速度,因为.sendFile() 已经内置了此检查(即可以避免此检查,而是在浏览器中检测到 404 响应,这就是我的所作所为现在正在做,效果很好)。
【问题讨论】: