In passport not getting req.user value in node js

660 Views Asked by At

I have an app in node js with javascript and I am trying to get the req.user but it's coming. Below is the code example which I am using

const app=express();
var bodyparser=require('body-parser');
var session=require('express-session');
var passport= require('passport');
var saml= require('passport-saml');
app.use(bodyparser.json);
app.use(bodyparser.urlencoded({extended:false});
app.use(session ({secret:'secretval',
resave: false,
saveUninitialized: true,}));
app.use(passport.initialize({}));
app.use(passport.session({}));

And I have below methods,

app.get('/login',passport.authenticate('samlstrategy',{session:true}),(req,res)=>{
res.redirect('myurl');
console.log('logged in user is as'+req.user);
return;
}

app.get('/login/callback',passport.authenticate('samlstrategy',{session:true}),(req,res)=>{
res.redirect('myurl');
return;
}

When I am invoking the url for /login it's working and user is getting authenticated by passport api.but I am not getting the user details in request. How can I get the user in req object.

1

There are 1 best solutions below

9
On

If user is a get parameter then you forgot query after req

Use

req.query.user