当前位置: 代码迷 >> Web前端 >> Cookie跟Session机制的总结(一)Cookie
  详细解决方案

Cookie跟Session机制的总结(一)Cookie

热度:91   发布时间:2012-10-24 14:15:58.0
Cookie和Session机制的总结(一)Cookie

CookieSession同是Web应用为了保持和客户端浏览器之间的会话的两种方式,同样保存了单个用户(浏览器)的key-value形式的数据。

?

Cookie

Cookie的信息保存在客户端,如果服务端需要在客户端写入Cookie,会在HTTP 的相应头中设置Set-Cookie消息,浏览器接收相应之后,将这些键值的对应的数据存在本地。例如访问淘宝首页收到的响应头如下:

?

?

?

abt=h; expires=Mon, 21-Jun-2010 15:21:48 GMT; path=/; domain=www.taobao.com

Set-Cookie的各个属性

1.?????? abt=h,表示一个键值对,设置一个名为abt值为hcookie到本地。

2.?????? expires= Mon, 21-Jun-2010 15:21:48 GMTCookie的过期时间,如果没有指定这个时间,则这个Cookie不会被写入到客户端的文件中,本次会话结束(浏览器关闭)之后Cookie失效

3.?????? path=/,指定Cookie的有效路径,/代表根目录,对站点下所有路径中访问都要带上此条Cookie,如果Cookie指定了某个目录,比如说 path=/member,只有访问/member/下的URL,浏览器才会在发请求的时候带上此条Cookie,否则忽略。

4.?????? domain=www.taobao.comcookie作用的域名,如果domain为空,则会默认被置为相应的域名,如果domain不为空而且和服务器的域名不一致就会被忽略掉。如果设置域名为.taobao.com,这条cookie对taobao.com下所有的二级域都有效。

5.?????? secure?如果这个词被设置,则只能在SSL通道传输

?

浏览器对服务端进行请求的时候,都会带上有效的Cookie,有些时候这些Cookie是多余的,比如说在请求静态文件(CSSJS文件),图片等,这毫无疑问浪费了带宽,所以,很多大型的网站采用CDN的形式存放静态的文件和图片,主站的域名和CDN域名不同,在大量请求CDN上的静态文件时,就不需要带上没有任何必要的Cookie数据了。

  相关解决方案