Cookie

Cookie

简介

Cookie翻译过来是‘ 小甜饼’,Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,实际上Cookie是服务器在本地机器上存储的一小段文本,并随着每次请求发送到服务器。

Cookie技术通过请求和响应报文中写入Cookie信息来控制客户端的状态

Cookie的字段的属性与说明

logcookie=qqqqqqqqq;   //key 与 value
 expires=Wed, 13-Mar-2019 12:08:53 GMT;	//在 HTTP1.1 中,expires 被弃用并且被更加易用的 max-age 所替代。你只需说明这个 Cookie 能够存活多久就可以了,而不用像之前那样指定一个日期。设置二者中的一个,Cookie 会在它过期前一直保存,如果你一个都没有设置,这个 Cookie 将会一直存在直到你关闭浏览器,这种称之为 Session Cookie。如果都设置则只取max-age。
 Max-Age=31536000; 
 path=/;	//浏览器访问该域名的哪些路径发送这个cookie
 domain=www.aaaa.com; //浏览器访问哪个域名时发送这个cookie(按照结尾一致性进行匹配)
 secure;   // 设置web页面只有在HTTPS安全连接时,才可以发送Cookie。
  HttpOnly;	// 只有在http访问时,浏览器才会自动带上这个cookie。而使用JS的document.cookie无法获取该cookie。主要用于安全。

Cookie与跨域

浏览器不允许随随便便进行跨域,以防止JS在一个页面访问另一个页面时,浏览器自动带入cookie,然后被获取到机密信息。如下图:

Cookie_第1张图片

而有了CORS(跨域资源共享,HTML5推出)机制后就可以避免这种情况。如下:
CORS

为什么CORS要将跨域的权利留给被跨网站,而不是采用浏览器跨域访问时,不携带cookie这种策略呢?

为了灵活性,因为很多时候就是存在跨域访问时携带cookie的需求。而将这个权利交给被跨网站就将权利交给被跨网站,极好的支持了这种情况,且非常合理的。

你可能感兴趣的:(网络基本概念复习)