1

I know that there has been another answer to this found here but I cannot for the life of me get my req.user to populate anything other than undefined while using angularjs.

I have tried cookieParser, including the session secret in cookieParser, making sure the order of my express session comes before the passport session, I have User serialzed and deserialized. Nothing is working.

here is my code, hope someone could help!

var HelperController = require('./controllers/helpers.js');
app.use("/helper", HelperController);

var passport = require('passport');
var cookieParser = require('cookie-parser');
var session = require('express-session');
//PASSPORT
//=================================
app.use(cookieParser('keyboard cat'));
app.use(session({
  secret: 'keyboard cat',
  resave: false,
  saveUninitialized: false
}));
app.use(passport.initialize());
app.use(passport.session());

//To be used when user is created ********
passport.use(User.createStrategy());
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());

//USER HOME REGISTER
//=================================
app.post('/register',  function(req, res){
  console.log(req.body);
  User.register(new User({
    username: req.body.username
  }),
  req.body.password,
  function(err, user){
    req.login(user, function(err){
      if (err) {console.log(err); }
      return res.json(user);
    });
  });
});

//USER HOME LOGIN
//=================================
app.post('/login', passport.authenticate('local'), function(req, res){
  res.json(req.user);
});



//ROUTER SETUP
//=========================================
var express = require('express');
var router = express.Router();

router.get('/get-user', function(req, res){
  var user = req.user;
  console.log(user);
  res.json({user: user});
});


module.exports = router;
Community
  • 1
  • 1
Eric Stermer
  • 959
  • 1
  • 12
  • 23

0 Answers0