我无法让我的.get()工作。我对.use()和.get()的理解是.use()用于我们想要应用的路径,而.get()更具体(选择特定的URL来应用)。使用Express指定特定路径
In我的例子中,我想显示'适用于所有页面'的任何页码,但是如果我输入'/ 28',我想让.get消息显示出来。现在,即使我去/ 28时,我也会收到.use消息。
router.use('/:id', function(req, res){
console.log("Things " + Date.now());
res.send('Applies to all pages ' + req.params.id);
});
router.get('/28', function(req, res){
res.send('Secret 28 page');
});
使用是为整个应用程序,并得到是一个特定的API,这意味着获取路径将被追加到使用路径。例如,您的代码将匹配路径'/ {some_id/28}'到您的get方法。如果你想以28的“适用于所有页面”作为唯一的例外来响应任何事情,只需在你的if语句中获得('/:id',()=> {如果28做了某事, )并摆脱使用,默认情况下使用将是'/'。 – Jason