Estoy tratando de almacenar la ID de usuario en la sesión de usuario en Express, pero por alguna razón, la sesión olvida el valor después de que el programa sale de la ruta de la API en la que se asignó. Aquí está la configuración de la sesión en index.js:
var session = require("express-session"); app.use( session({ secret: "abcdefghijklmnopqrstuvwxyz", resave: false, saveUninitialized: false, }) );Aquí es donde estoy configurando la variable de sesión:
exports.agent_login = (req, res) => { console.log("Request received"); Agent.findOne({ email: req.body.email }) .then((user) => { if (!user) { res.status(403).json({ message: "Email or password is incorrect", success: false, }); } else { bcrypt.compare(req.body.password, user.password, (error, match) => { if (error) { console.log("Error seen ", error); res.status(500).json({ message: "Internal server Error", success: false, }); } else if (match) { req.session._id = user._id; console.log( "Request session inside agent login : " + req.session._id ); //Prints the correct value res.status(200).json({ token: utils.generateToken(user), message: "Agent login successfully", success: true, }); } else { res.status(403).json({ message: "Email or password is incorrect", success: false, }); } }); } }) .catch((error) => { console.log("Error seen ", error); res.status(500).json({ message: "Internal server Error", success: false, }); }); console.log("Agent id inside Brand : " + req.session._id); //Prints undefined };Y aquí es donde quiero acceder a dicha variable pero da como resultado indefinido:
console.log("Agent id inside Brand : " + req.session._id); //Prints undefinedHe estado frustrado con esto por un tiempo ahora. si alguien me puede ayudar con esto se lo agradeceria mucho gracias