[计算机网络]Cookie和Session的区别

概述

好久没有总结东西了, 今天久违的来更新下

今天的主题是计算机网络中浏览器常用的数据存储方式Cookie和Session, 介绍下Cookie和Session, 同时简单介绍下两者的区别

Cookie和Session

Cookie

首先要知道的是Cookie是存储在用户浏览器上的, 服务器发送到用户浏览器上的数据被浏览器缓存起来, 就会被保存到本地的Cookie中
浏览器在下次向服务器请求数据的时候可以携带上Coookie中的数据一起发送给服务器

看到这里大伙就知道了, Cookie主要是用于缓存一些服务器的数据的, 主要是用于保存用户的登录状态等信息, 用于弥补HTTP无状态的缺陷, 让服务器可以根据用户Cookie中的信息提供一些定制化的服务, 还可以实现单点登录

注意

  1. 单个Cookie保存的数据不能超过4k, 一般浏览器会限制一个网站最多保存20个Cookie
  2. Cookie传输有泄漏的风险, 所以不能用于保存用户的隐私数据

Session

Session是服务器和客户端一次会话过程中临时存储在服务器上的数据, Session对象可以存储特定用户的属性和配置信息
在Web页面跳转的时候Session中的变量是不会丢失的, 会在用户会话期间一直存在

  • 这里就应该和Cookie区分开来了, Cookie是存储在用户浏览器上, Session是存储在服务器上的

Http是无状态的, Session又是如何区分HTTP请求是来自哪个用户的浏览器呢?

Session底层是通过Cookie来辅助实现的, 服务器会给当前和用户浏览器的会话分配一个SessionID, 用户浏览器在请求服务器的时候就会在Cookie中携带这个SessionID, 以此来维护用户的登录状态和区分存储在服务器上的不同用户的Session对象

Session和Cookie的区别

  1. 存储位置上
    cookie数据存放在用户的浏览器上, session数据存放在服务器上

  2. 安全性
    cookie数据存放在浏览器上, 他人可以伪造cookie
    session存放在服务器上, 他人难以修改

  3. 性能
    session会在和用户会话期间一直存储在浏览器上,当访问量大的情况下session会压迫服务器的性能
    cookie数据不保存在服务器上, 对服务器负担比session小

  4. 生命周期不同
    cookie可以在存储很长时间, Session生命周期只在一个会话时间内, Session超时 | 客户端关闭都会导致Session失效

  5. 存储大小不同
    cookie单个存储不能超过4kb, session没有这个限制, 主要看服务器允许的范围

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值