node.js - express-session模块

它可以实现 session 功能。

  • 注意:它需要写在 路由 的上面。

步骤:

1、下载 express-session 库。

npm install express-session

2、导入包。

const session = require("express-session");

3、使用 app.use() 中间件来拦截所有请求,并且将请求交给 session 来处理。

  • 在 app.use() 中间件中调用 session 这个方法。

  • 在这个方法中需要传入一个对象,对象有一个键值对。

    • 键:secret

    • 值:密钥 (自定义的),这个密钥是用于加密 cookie 信息的。

app.use(session({
    secret: "keyboard cat",// 密钥
    resave: false,
    saveUninitialized: true
}));

1、方法内部会为请求对象(req)下面添加一个属性,属性的名字叫做 session, session属性的值是用于保存一个对象,这个对象保存的就是用户用户信息。

2、方法内部会在 session 存储数据时,生成 session ID,这个 session ID 是唯一标识。然后将 session ID 存储在客户端的 cookie 当中,在客户端再次访问服务端的时候,这个方法会拿到客户端传过来的 cookie ,并从 cookie 中提取出 session ID ,根据提取出来的这个 session ID 中,找到用户信息。

req.session.username = ret.username;// 将这个用户昵称信息存储到 session 中
//ret是数据库中的用户信息

发表评论 / Comment

用心评论~