2016-06-26 100 views
1

我使用redirect通過當前用戶的用戶名至其他網頁的價值,所以......如何更改HTML標題

var current_user = encodeURIComponent(req.body.log_username); 
res.redirect('/home?valid=' + current_user); 

...接收頁面有以下代碼...

router.get('/', function (req, res) { 
    res.render('home', { title: 'Express' }); 
    var passedVariable = req.query.valid; 
    console.log(passedVariable); 
}); 

正確的用戶名已通過,但我需要知道如何將用戶名併入我的html。

例如,當HTML呈現,我想報頭說"Welcome 'username'"

我怎樣才能做到這一點?使用php這是相對簡單的,但我對節點js的損失。

+1

爲什麼不使用實際的服務器端會話和存儲用戶信息的方式?堅持(會話)數據就像你所建議的那樣*可能是危險的。 – mscdex

回答

2

您將發送登錄請求併成功登錄後,您將被重定向到/路線。在這裏,你的代碼中有usernamepassedVariable變量。您可以將此變量傳遞到主頁面,您可以在頁面中將其呈現。

router.get('/', function (req, res) { 
    var passedVariable = req.query.valid; 
    console.log(passedVariable); 
    res.render('home', { title: 'Express', username: passedVariable }); 
}); 

現在,您將在主頁面模板中獲得此變量,並且可以使用它。對於ejs,代碼如下

<p><%= username %></p> 

對於jade

p= username 

模板端代碼取決於您選擇的技術,無論您是使用ejsjade