浏览器里的cookie是什么 浏览器cookie是什么意思( 四 )


cookie中的属性如下图所示:
图1 cookie的属性
图1中Name列是cookie的名字;Value列是cookie的值;Domain列是cookie的域;Path列是cookie的路径;Expires/Max-Age列是cookie的有效期;Size列是cookie大小;Http列是控制cookie只能通过http请求的方式访问;Secure列控制cookie只能在https下才被发送;SameSite列是限制cookie在不同站点之间是否被传递的 , 用的比较少 。
下面我们重点介绍这其中的几个属性 。
domain和path组合在一起来控制cookie可以被发送到哪些URL地址 。当URL的域名是domain或者其子域名并且路径是path或者其子路径时 , 请求该URL就会携带cookie信息 。举个例子:假设cookie的domain属性设置为.abc.def , path属性设置为/ , 那么当访问book.abc.def/novel或者music.abc.def或者abc.def/movie的时候都会携带该cookie信息 。domain的默认值是当前网页的域名 , path的默认值是当前网页的路径 。
expires和max-age都可以设置cookie的有效期 。expires设置的是一个时间点 , 到时间点之后cookie失效;max-age设置的是一个时间段 , 从cookie创建的时候算起 , 过max-age时间之后cookie失效 , 他们的等效关系是expires=创建时间 + max-age 。如果不设置cookie的有效期 , 那么浏览器关闭之后cookie就会失效 , 上图1中的Expires/Max-Age列值为session的就是没有设置有效期的cookie 。
HttpOnly属性限制cookie只能通过http请求的方式访问 , 而不能通过本地js访问 , 可以防止js修改cookie的内容 。比如上图1中Http列值为√的就表示设置了HttpOnly属性 , 我们在本地通过js获取cookie如下:
图2 通过js获取cookie信息
我们可以看到通过js只能获取到没有设置HttpOnly属性4个的cookie 。图1中有两个设置了HttpOnly属性的cookie通过js是获取不到的 。
看到这里真是辛苦了 , 下面放松一下^_^
复制下面花括号{}里面的文字领取 。注意:每天可领一次 , 建议把{}里面的内容存起来 , 每天都可复制领取 。
{复制这里Molrjj28mp , 然后打开支付宝就能领取!三天之内线下付款抵扣}
篇幅有限 , 关于cookie的设置以及cookie跨域的相关内容后续文章再作介绍 , 感谢阅读 。