我正在创建一个小型 MERN 应用程序用于注册、登录,成功登录后,它会显示他们的个人资料。
1.我希望用户登录,如果成功,我会将 user._id 发送到 React 应用程序并将其重定向到 profile/user._id
2.在 ComponentDidMount 方法的配置文件页面,我将执行一个 get-request,使用 user._id 从我的服务器获取用户数据。
3.在此获取请求中,我想检查该用户是否有活动会话,这样即使有人使用 URL:profile/some_user_id,它也始终会检查活动会话。
我的问题是:
1.我是否需要显式地将 cookie 发送给客户端(如果是),那么express-session 将如何为我做到这一点。
2.解决方案1后,当我执行 /profile/id get-request 时,如何在会话中访问此保存的数据。
我的应用程序.js
require('./passport')(passport);
app.use(cookieParser());
//Express session
app.use(
session({
secret: 'secret',
resave: true,
saveUninitialized: false,
cookie: { maxAge: 60*60*1000 },
})
);
app.use(passport.initialize());
app.use(passport.session());
app.post('/login', (req, res, next) => {
passport.authenticate('local', (err, user, info) => {
if(err) {
res.status(203).send(err);
} else {
if(user) {
req.login(user, err => {
req.session.user …Run Code Online (Sandbox Code Playgroud)