会话机制:
浏览器-->服务器
浏览器<--服务器 (产生一个会话id,保存在cookie中)
浏览器-->服务器(服务器根据会话id关联到相应数据信息体data)
var express = require('express');
var session = require('express-session');
var cookieParser = require('cookie-parser');
//在安装cookie-parser时可能会出现问题,可以用国内淘宝镜像,安装淘宝镜像
//参考网址:https://blog.csdn.net/x386277405/article/details/78297526
var app = express();
app.use(cookieParser());
app.use(session({
name : 'sess‘, //在cookie中session的字段名,默认为 connect.sid
store : , //session的储存方式,默认存放在内存中,也可以使用 redis,mongodb 等。express 生态中都有相应模块的支持。
secret : '老王', //计算hash值,放在cookie中,使产生的signedCookie防篡改
cookie : {maxAge:20000} ,//设置存放 session id 的 cookie 的相关选项,默认为(default: { path: '/', httpOnly: true, secure: false, maxAge: null })
genid : ,//产生一个新的 session_id 时,所使用的函数, 默认使用 uid2
这个 npm 包
rolling: false ,//每个请求都重新设置一个 cookie,默认为 false
resave : true //即使 session 没有被修改,也保存 session 值,默认为 true
}));
app.get('/num',function(req,res){
if(!req.session.num){
req.session.num = 1;
}
req.session.num++;
res.send("the num is:"+req.session.num);
});
app.listen(8000);
同时对session的操作可以将session对象保存到服务器文件目录下,需要用到session-file-store插件
参考网址:http://wiki.jikexueyuan.com/project/node-lessons/cookie-session.html