cookie-parser与 express-session

1. cookie-parser

1.1 cookie的执行原理:当客户端访问服务器的时候(服务运用了cookie),则服务器会生成一份cookie传输给客户端,客户端会自动把cookie保存起来;以后客户端每次访问服务器,都会自动的携带着这份cookie。

1.2 cookie的特点:

(1)保存到客户端,容易被篡改(删除、禁用)

(2)保存的数据量有限的

(3)简单易懂好用

1.3cooke的使用:

(1)安装:npm i cookie-parser

(2)使用:

案例:

先引用:var cookieParser = require('cookie-parser');

 

app.use(cookieParser());//使用cookie-parser

生成cookie:

//设置cookie
//在响应的时候,生成一份cookie
// res.cookie('xxcode',"abc");

取出cookie:

 console.log(req.cookies);

加密cookie:

var cookieParser = require('cookie-parser');

app.use(cookieParser("xiaoxuesheng"));//签名 (加密) 指定秘钥 "xiaoxuesheng"

//使用cookie
 //加密存储
 res.cookie("mycode","abc",{
   signed:true   //加密
})
//取出cookie

2. express-session

session是一种特殊的cookie。cookie是保存在客户端的,而session是保存在服务端。

当客户端第一次请求服务器的时候,服务器生成一份session保存在服务端,将该数据(session)的id以cookie的形式传递给客户端;以后的每次请求,浏览器都会自动的携带cookie来访问服务器(session数据id)。

2.1 安装:npm i express-session

2.2 使用:

//引入session中间件
let expressSession=require("express-session")

//使用session中间件
app.use(expressSession({
resave:true,//每次是否都刷新存储器
saveUninitialized:true,
secret:"xiaoxuesheng" //秘钥
}))

代码示例:

使用session存储数据:

  //将数据存储到session中
 req.session.yourcode='xyz';

取出session数据:

  //取出存储的session
 console.log(req.session);

2.2  cookie 与session的区别:

(1)cookie是保存在客户端的

(2)session是保存在服务器端的

(3)session会更加的安全可靠

 

 

 

上一篇:11.会话跟踪技术


下一篇:Java项目:在线淘房系统(租房、购房)(java+SpringBoot+Redis+MySQL+Vue+SpringSecurity+JWT+ElasticSearch+WebSocket)