节点/角度身份验证

时间:2016-06-27 18:46:37

标签: angularjs node.js

我试图弄清楚如何使用node.js和angular.js对用户进行身份验证。我有一个节点服务器,其路由指向api / login。用户可以注册并登录所有工作。但是当我到达客户端时,我不知道该去哪里。我已经设置了一个http拦截器,如果会话不存在,它会将用户发送回登录页面。我目前正在使用session express。以下是我的代码片段:

登录路线:

router.post('/login', function(req, res, next) {
var username = req.body.username;
var password = req.body.password;

User.findOne({username: username, password: password}, function(err, user) {
  if(err) {
    console.log(err);
    res.status(500).send();
  }
  if(!user) {
    res.status(404).send();
  } else {
    console.log('Set' + user);
    req.session.user = user;
    res.status(200).send();
  }
});

保护此终端:

app.get('/api/endpoint', function(req, res) {
if(!req.session.user) {
  console.log('Unauthorized');
  res.status(401).send();
} else {
  console.log('Logged in');
  res.status(200).send();
}
});
app.use(bodyParser.urlencoded({extended: true}));

app.use(bodyParser.json());

app.use('/api', require('./routes/login'));
app.use('/api', require('./routes/register'));

app.listen(port);

我不确定这是否足够详细,但我知道这里出现了一些非常简单的问题,我只是看不到它哈哈!任何帮助将不胜感激!

0 个答案:

没有答案