session和cookie的区别

前言:cookie和session有着千丝万缕的联系

1.存储位置不同:

        cookie的数据信息存放在客户端浏览器上。

        session的数据信息存放在服务器上。

2.存储容量不同:

        单个cookie保存的数据<=4KB,一个站点最多保存20个Cookie。

        对于session来说并没有上限,但出于对服务器端的性能考虑,session内不要存放过多的东            西,并且设置session删除机制。

3.存储方式不同:

        cookie中只能保管ASCII字符串,并需要通过编码方式存储为Unicode字符或者二进制数据。

         session中能够存储任何类型的数据,包括且不限于string,integer,list,map等。

4. 隐私策略不同:

       cookie对客户端是可见的,别有用心的人可以分析存放在本地的cookie并进行cookie欺骗,所         以它是不安全的。

        session存储在服务器上,对客户端是透明对,不存在敏感信息泄漏的风险。

而在后端数据交互中,cookie和session的获取和使用有某些区别:

        cookie:下载   npm   i    cookie-parser

//引入cookie
let cookieParser = require('cookie-parser');


//
app.use(cookieParser("xiaoxuesheng"));//签名,加密

        这是我们在引入cookie模板

express-session

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

安装:npm i express-session

使用:引入

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

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

注释:session初始是没有,需要存储,之后再取出

1)使用session存储数据:

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

2)取出session数据:

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值