cookie & session

Cookie
HTTP协议无状态,服务器单从网络连接上无法知道客户身份,如何记录客户端用户信息,这里就用到了Cookie
当用户第一次访问并登陆一个网站的时候,Cookie的设置以及发送会经历如下四个步骤:
1.客户端发送一个请求到服务器。
2.服务器使用response向客户端颁发一个cookie。
3.客户端保存cookie,之后每次向服务器发送请求时,都会把请求的网址连同该cookie一同提交给服务器。
4.服务器检查该cookie,以此来辨认用户状态。


cookie属性项目
属性名		描述
name		该Cookie的名称,Cookie一旦创建,名称便不可更改。
value		该Cookie的值。
maxAge		该Cookie失效的时间,单位秒。
secure		该Cookie是否被使用安全传输协议传输。安全传输协议有HTTPS,SSL等,在网络上传输数据之前先将数据加密,默认为false
path		该Cookie的使用路径。
domain		可以访问该Cookie的域名
comment		该Cookie的用处说明,浏览器显示Cookie信息的时候显示该说明
version		该Cookie使用的版本号。0表示遵循Netscape的Cookie规范,1表示遵循W3C的RFC 2109规范。

默认情况下,cookie存储在浏览器的内存中,当浏览器关闭,内存释放,则cookie被销毁。
setMaxAge(int seconds)	设置cookie存活时间
1.正数:将cookie写入浏览器所在电脑的硬盘,持久化存储,到时间自动删除
2.负数:默认值,cookie在当前浏览器中,当浏览器关闭,则cookie被销毁
3.零:    删除对应cookie


如果设置domain为: ".google.com",则所有的以"google.com"结尾的域名都可以访问该cookie
cookie是不可跨域名的,域名www.google.com颁发的cookie不会被提交到www.baidu.com去
这是由Cookie的隐私安全机制决定的。隐私安全机制能够禁止网站非法获取其他网站的Cookie。


Session
session是服务器端使用的一种记录客户端状态的机制
客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上
cookie保存在客户端浏览器上

----------------								-------------------------------------
|	      		|								|	    服务器						|
|	      		|	1.请求						|2.sessionID           session对象	|
|客户端	      	|--------------------------->	|      \		     /				|
|	      		|								|    以ID为键,session对象存储		|
|	      		|	3.将sessionID				|  在Map中。							|
|	      		|<---------------------------	|    								|
|	      		|			以cookie的方式发送	|									|
|	      		|	给客户端						|									|
|浏览器		    |								|									|
|	      		|								|5.根据sessionID找到对应的			|
|	      		|	4.再次请求携带				|session对象。						|
|	      		|--------------------------->	|									|
----------------	sessionID					------------------------------------


1.cookie 和 session 都是来完成一次会话多次请求间数据共享的
2.区别
   1>存储位置:cookie是将数据存储在客户端,session将数据存储在服务器端
   2>安全性:    cookie不安全,session安全
   3>数据大小:   cookie最大3KB,session无大小限制
   4>存储时间:cooke可以长期存储,session默认30分钟(tomcat)
   5>服务器性能:cookie不占用服务器资源,session占用服务器资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

metabit

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值