2016-06-30 10 views
0

ログインとmyservicesという2つのページがあります。ユーザーがログインすると、myservicesページに移動し、そのユーザー名が表示されます。 login.jsでNode.js:res.renderまたはres.redirectに? express-session

、私が持っている:

req.session.user = "abc"; 
res.redirect('/myservices'); 

とmyservices.jsで、私が持っている:私のテンプレート(myservices.ejs)で

router.get('/', function(req, res, next) { 
    console.error("went through get in my services"); 
    console.error(req.session.user); 
    res.render('myservices', { 
    user: req.session.user 
    }); 
}); 

を、私は、ユーザーをプリントアウトしてみてください:私は、ログインするたびに

<%if(user){%> 
    <%=<p>user</p>%> 
<%}%> 

、私はmyservicesページにリダイレクトし、コンソールが

を示し
went through get in my services 
abc 

ブラウザでは、ページを更新するまで「abc」は表示されません。初めてmyservices.ejsにレンダリングされないのはなぜですか?

すべてのヘルプは大歓迎です!

答えて

0

あなたはまだ初めてローカルを通過していません。リダイレクトする代わりにlogin.jsでレンダリングし、ローカルに渡します。

req.session.user = "abc"; 
res.render('myservices', { 
    user: req.session.user 
}); 
+0

login.jsからmyservicesにレンダリングすると、私のURLは/ loginになります。私は自分のURLを/ myservicesにしたいですが、それを達成する方法はありますか? –

関連する問題