Skip to content

Instantly share code, notes, and snippets.

@miyamotodev123
Created November 30, 2015 01:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save miyamotodev123/4f3b5b9800b7457722ce to your computer and use it in GitHub Desktop.
Save miyamotodev123/4f3b5b9800b7457722ce to your computer and use it in GitHub Desktop.
passport tdd blog routes.js
module.exports = function(app, passport) {
app.route('/register')
.post(function(req, res, next) {
if (!req.body.username || !req.body.password) {
return res.status(400).json({error: 'Username and Password required'});
}
passport.authenticate('local-signup', function(err, user, info) {
if (err) {
return res.json({error: err});
}
if (user.err) {
return res.json({error: user.err});
}
req.logIn(user, function(err) {
if (err) {
return res.json(err);
}
return res.json({redirect: '/portal'});
})
})(req, res);
});
app.route('/login')
.post(function (req, res, next) {
if (!req.body.username || !req.body.password) {
return res.status(400).json({error: 'Username and Password required.'});
}
passport.authenticate('local-login', function (err, user, info) {
if (err) {
return res.json({error: err});
}
if (user.err) {
return res.json({error: user.err});
}
req.login(user, function (err) {
if (err) {
return res.json(err);
}
return res.json({redirect: '/portal'});
});
})(req, res);
});
app.route('/logout')
.post(function(req, res) {
req.logout();
res.json({redirect: '/logout'});
});
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment