我对MEAN很新。我使用node.js,express和mongodb创建了一个应用程序。我希望在用户登录后将用户名发送到仪表板。如何使用Angularjs进行操作。我不想使用ejs模板引擎。如果需要任何中间件......请告诉我。 谢谢......
这是我的usercrud.js
var User = require("../../schema/user/userschema");
var bcrypt = require('bcrypt');
const userOperation={
login(userObject,response){
var username=userObject.userid;
var psw = userObject.password;
User.find({ userid:username}, function (err, user) {
if (err) {
return done(err); }
if (!user) {
return done(null, false, { message: 'no user found' });
}
if(user){
console.log("user's true password is: "+user[0].password);
console.log("password"+psw);
bcrypt.compare(psw, user[0].password, function(err, res) {
if (err){
throw err;}
if(!res) {
console.log('Ooops!. Wrong Pass!');
return done(null, false, req.flash('loginMessage', 'Oops! Wrong password.')); // create the loginMessage and save it to session as flashdata
}
if(res){
response.redirect('dashboard');
}
});
}
});
},
}
如何将用户名发送到dashboard.html
这是userroute.js
router.get('/dashboard',(req,response)=>{
});
答案 0 :(得分:0)
当您在应用程序中使用MEAN堆栈时,您可以做的是通过异步调用检查登录并返回用户对象作为响应。然后,您可以将该用户存储到localstorage中。
一旦用户成功登录,你就会得到这个"用户"响应中的对象,使用角度重定向而不是从后端服务器将用户从登录重定向到仪表板。
重定向后,使用localstorge获取用户信息。