Cookie和Session的区别

本文详细介绍了Cookie和Session的概念、作用及特点,分析了二者之间的区别,包括存储位置、数据类型、大小限制及生命周期等方面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Cookie

1、简介

一小段文本信息(key-value格式),客户端(浏览器)向服务端发起请求,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie,客户端浏览器会把Cookie保存起来,当浏览器再请求该网站时,浏览器把请求的网站连同该Cookie一起提交给服务器,服务器检查该Cookie,以此来辨认用户状态。

2、Cookie的作用

客户端存储用户访问网站的一些信息。

  • 记住密码,下次自动登录。
  • 购物车功能。
  • 记录用户浏览数据,进行商品(广告)推荐。

3、特点

  • cookie是在服务端创建,保存在浏览器这一端;
  • 生命周期可以通过 cookie.setMaxAge(2000)修改,如果不设置生命周期,cookie的生命周期当浏览器关闭时就消亡;
  • 单个cookie在客户端的限制是3K;
  • cookie可以被多个浏览器共享;
  • cookie存放时候是以明文方式存放,因此安全性较低,可以通过加密后存放,或使用HTTPS。

二、Session

1、简介

当浏览器 第一次发送请求时,服务器自动生成了一个Session和一个Session ID用来唯一标识这个Session,并将其通过响应发送到浏览器。当浏览器第二次发送请求,会将前一次服务器响应中的Session ID放在请求中一并发送到服务器上,服务器从请求中提取出Session ID,并和保存的所有Session ID进行对比,找到这个用户对应的Session。

2、Session的作用

Session的根本作用是在服务端存储用户和服务器会话的一些信息。

  • 判断用户是否登录。
  • 购物车功能。

3、特点

  • session是存放在服务器的内存中;
  • session中属性默认的生命周期是30分,可以通过html文件来修改;
  • 服务器能够为不同的浏览器提供不同的session,

三、cookie与session的区别

共同点:cookie和session都是用来跟踪浏览器用户身份的会话方式。

1.存储的位置不同:cookie数据保存在客户端,session数据保存在服务器端。session存储的数据比较安全;

2.存储的数据类型不同:两者都是key-value结构,但针对value的类型是有差异的。cookie:value只能是字符串类型,session:value是Object类型;

3.存储的数据大小限制不同:cookie大小受浏览器的限制,很多是3k的大小,session理论受内存的限制;

4.生命周期的控制:cookie的生命周期当浏览器关闭的时候就消亡了
cookie的生命周期是累计的,从创建时就开始计时,30min后cookie生命周期结束。
session的生命周期是间隔的,从创建时开始计时如在30min内没有访问session,那么session生命周期就被销毁。

参考:
面试常考–cookie和session的区别
cookie与session的区别(面试重点)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值