0
如果我有這樣一個數組:路線基於字符串數組
var users = [
{ name: 'joe', info : 'this man's name is joe'},
{ name : 'betty', info : 'this woman's name is betty'}
];
和途徑,如:
app.get('/test/:person', loadUser, function(req, res) {
if (!err) {
res.send(req.user.info);
}
else {
res.redirect('/');
}
})
如何設置了loadUser
中間件因此,如果:person
參數是相等到數組中的其中一個名稱,頁面將加載其各自的信息。但是,如果輸入的:person
不在數組中,它只是重定向到另一頁。
到目前爲止,我所擁有的是:
function loadUser(req, res, next){
for(var i= 0; i < users.length; i++) {
if (req.params.gg == users[i].id) {
req.user = users[i];
}
}
next();
}
,但我不知道如何添加錯誤部分和next()
部分。
重定向現在在無效的':person'上工作。但是,當它是joe/betty時,頁面不會加載。 –
是的,錯誤處理程序中間件僅在錯誤傳遞給'next'時調用。您還必須附加處理/服務有效用戶的另一箇中間件('sendInfo')。我編輯了我的帖子以添加'sendInfo'。 –
這是同樣的問題,無效':person'完美地重定向工作,但具有有效名稱的頁面無法加載;鉻停留在負載上。 –