使用 Express-Session 存储数据

Storing Data With Express-Session

假设您希望用户通过输入法输入他们的电子邮件,并希望捕获该电子邮件并将其保留在多个网页上。将电子邮件存储在 express-session 中的会话对象中是一种不好的做法吗?

类似于:

req.session.email = '<user-email-input-from-client>'

当客户端将电子邮件输入传递给服务器时。

用例是以后在其他网页上,我想访问邮箱。使用带有 req.session 的会话对象来查看该电子邮件是否存在。

function controller(req, res){
   console.log(req.session);
}
// Output: 
Session {
  cookie:
   { path: '/',
     _expires: null,
     originalMaxAge: null,
     httpOnly: true },
  email: 'test@test.com' }

和checking/using它与:

req.session.email

这是不安全的做法还是不好的做法?或者如果有更好、更优雅的方法,有人可以给我一些指示吗?

提前致谢。

只要设置 "secret key".

,这是一个很好且安全的做法
const express = require('express'); 
const session = require('express-session')

const app = express();

app.use(session({name: "SessionID",secret: "123"}))