如何在login后请求用户数据,Node.JS

大家好,我是Node新手,请耐心等待。

无论如何,我目前正在为我的新节点应用程序的身份validation。 到目前为止,我有能力获得一切基本工作(login,注册,注销)。 我现在进入我的用户个人资料的设置页面,但我无法访问{{username}}或{{email}},例如,它保留空白或抛出一个错误。

我想知道如何让用户名,电子邮件和其他信息保留在会话中,或者一旦我的用户login后就可以访问它,以及以后如何向会话添加更多信息(这很重要,因为我需要做到这一点)。

这是我的代码:

注册(不包括validation)

var newUser = new User({ username: username, email:email, password: password }); User.createUser(newUser, function(err, user){ if(err) throw err; console.log(user); req.flash('success_msg', 'You are registered and can now login'); 

login:

 router.post('/login', passport.authenticate('local', {successRedirect:'/', failureRedirect:'/users/login',failureFlash: true}), function(req, res) { res.redirect('/'); }); 

我不确定我需要显示什么代码,但是如果你们需要看别的东西来帮助我,请告诉我。

我用快递,护照和车把来使用Node.JS。

谢谢!

我想知道如何让用户名,电子邮件和其他信息保留在会话中,或者一旦我的用户login后就可以访问它,以及以后如何向会话添加更多的信息(这很重要,因为我需要做到这一点)。

这个用例有一个非常好的NPM模块:

https://github.com/expressjs/session

我已经做了很好的经验。

只需通过NPM安装,然后:

 var session = require('express-session') 

这是你如何使用它:

 // Use the session middleware app.use(session({ secret: 'keyboard cat', cookie: { maxAge: 60000 }})) // Access the session as req.session app.get('/', function(req, res, next) { if (req.session.views) { req.session.views++ res.setHeader('Content-Type', 'text/html') res.write('<p>views: ' + req.session.views + '</p>') res.write('<p>expires in: ' + (req.session.cookie.maxAge / 1000) + 's</p>') res.end() } else { req.session.views = 1 res.end('welcome to the session demo. refresh!') } }) 

正如我从你的描述得到的是,你有关于会议的问题。 为此,您可以访问https://www.npmjs.com/package/session-storage以将session-storage包含到您的项目中,这将有助于您更好地完成工作&#x3002;