2016-02-21 21 views
0

我正在使用express。如何創建只爲現有用戶呈現相同頁面的路由系統? 例如用戶:jonh - >將有一個配置文件頁users/jonh?但'users/jonhhh'不應該存在?節點js爲每個用戶顯示路由

router.route('users/:id') 
     .get(models.User.client); 
+0

應該/ users/jonhhh 404? – Acey

回答

2

退房,如果用戶存在並呈現

app.get('/users/:id', function(req,res) { 
    if (users.indexOf(req.params.id) == -1) { 
    res.status(404); 
    return res.send('<html><body>' + 
     '<h1>User ' + req.params.id + ' not exists.</h1>' + 
     '</body></html>' 
    ); 
    } 
    res.status(200); 
    res.set('Content-type', 'text/html'); 
    res.send('<html><body>' + 
    '<h1>Hello ' + req.params.id + '</h1>' + 
    '</body></html>' 
); 
}); 

不同的頁面在這裏users是現有用戶的陣列。您可以使用不同的方法 - 例如嘗試在數據庫中查找此用戶,然後決定要呈現的內容。

+0

你會怎麼做後面的部分? (與數據庫中的用戶匹配並決定渲染的內容) – user5893250