0
我將navbar.ejs設置爲partial,以便我不需要再次重寫它。每條路線都需要navbar.ejs。使用護照驗證IM如何在每條路徑中存儲用戶的對象
<% if (!user) { %>
<li><a href="/signup">Signup</a></li>
<li><a href="/login">Login</a></li>
</ul>
<% } else{ %>
<li><a href="/dashboard">Dashboard</a></li>
<li><a><%= user.profile.name %></a></li>
<% } %>
示例將
app.get('/', function(req, res) {
res.render('home');
}
app.get('/dashboard', isLoggedIn, function(req, res) {
res.render('dashboard', { user: req.user });
}
app.get('/about', function(req, res) {
res.render('about');
}
對於有user's object
作爲響應渲染,但其他人將繼續顯示
user is not defined
我知道,當工作正常路線顯而易見的解決方案是在每條路線中傳遞user's object
,但這真的很瘋狂。
試想一下,如果我必須這樣做
app.get('/1', function(req, res) {
res.render('/1', {user: req.user});
}
app.get('/2', function(req, res) {
res.render('/2', {user: req.user});
}
app.get('/3', function(req, res) {
res.render('/3', {user: req.user});
}
app.get('/4', function(req, res) {
res.render('/4', {user: req.user});
}
app.get('/5', function(req, res) {
res.render('/5', {user: req.user});
}
如果需要驗證的路線,我不介意傳遞user's object
,但簡單的路線如家,約或諮詢我不喜歡需要在傳遞。
您使用的護照爲您的身份驗證機制,每一個路線? – sinusGob
是的,我正在使用護照作爲我的身份驗證 –
下次請說明您使用護照或自定義身份驗證的目的。 – sinusGob