Cookies原理

Cookie用于在浏览器中保存数据,由服务器端写入客户端。它的工作原理类似登录保存账号密码,方便下次免登录。Cookie与Session的主要区别在于存储位置,Cookie存储在客户端,而Session在服务端。Cookie内容只能是文本,且客户端可阻止写入,按路径区分读取,并分为两种类型:窗口/子窗口关闭后消失和持久化的文本。设置Cookie需要在web.xml中配置对应的servlet。

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

Cookie:记录一系列状态

Cookie工作原理:在某个浏览器中保存数据后,服务端会将数据写到客户端的本地中,以cookie的保存机制保存。

简单理解:就是将服务器端的东西写到客户端中,就好比如,使用账号登录某个网页时,大多浏览器会弹出一个提示框(访问是否保存账号与密码),选择保存后,保存的账号以及密码会使用cookie机制保存到客户端,下次再登录这个网站就不再需要输入账号与密码了。这个就是cookie的工作原理。

下图是在网页中使用cookie保存下来的信息(这些信息是不会损坏电脑的,反倒是如果拦截cookie有些网页就无法正常访问了。)

 

Cookie与Session的区别:Cookie是记录在客户端的,而Session是记录在服务端的。

Cookie原则:

  1. 服务器可以向客户端写内容

下图就是服务器写到客户端的cookie信息

2、只能是文本内容

3、客户端可以阻止服务器写入cookies(这个是在浏览器中设置的。)

4、只能拿自己webapp写入的东西(意思:火狐不能拿谷歌的cookie信息)

5、Cookie分为两种

属于窗口/子窗口(当关闭浏览器窗口,Cookie即消失)

如果cookies没有设置生命周期,或者设置为-1,那么cookie就是写在内存了,而没有写在客户端上,这种情况都是当关闭浏览器后,cookie即消失。

属于文本(写入客户端的文本,只能写文本文档,不能写其他的)。

关闭浏览器重新打开后,在内存中的已经无法读取了,只有还写在客户端的还可以查到。(为什么无法读取呢,因为没有给出时间,没有写入多长时间,或者-1,所以也就是上述中的当关闭浏览器窗口,Cookie即消失的一种情况。)

6、一个servlet或者jsp设置的cookies能够被同一个路径或者子路径下面的servlet或者jsp读到,其他的不同路径下保存的读不到,这个路径不是指那些真真正正的服务器文件路径,而是URL(路径=URL)(路径!=真实文件路径)

URL:servlet的配置文件打的URL

 

设置客户端的cookie

HTML样式,已经写好链接,直接跳转,因为有些cookie没有设置时间,所以实在内存中运行的,所以要是直接关掉再打开浏览器,就读取不到内存中的cookie了

读取客户端的cookie

上图的结果

记得servlet文件(.Java文件)是需要到web.xml中配置的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值