一、关于session
session是另一种记录客户状态的机制,与cookie保存在客户端浏览器不同,session保存在服务器当中;
session的实现原理:
当客户端访问服务器时,服务器会生成一个session对象,对象中保存的是key:value值,同时服务器会将key传回给客户端的cookie当中;当用户第二次访问服务器时,就会把cookie当中的key传回到服务器中,最后服务器会吧value值返回给客户端。
因此上面的key则是全局唯一的标识,客户端和服务端依靠这个全局唯一的标识来访问会话信息数据。
session的本质其实就是加密的cookie版本
二、设置session
我们使用express-session模块来设置session
1.安装express-session
cnpm install express-session --save
2.引入express-session模块
const session=require("express-session");
3.设置session
session(options);
如下列代码:
const express=require("express");
var cookie = require('cookie-parser');
var session = require('express-session');
var app=express();
//配置中间件
app.use(session({
secret: "keyboard cat", //密钥
resave: true, //强制保存session
saveUninitialized: true,//是否保存初始化的session
cookie: {
maxAge: 5