Cookie中的几个概念

1. Domain

Domain表示Cookie所在的域(如:www.baidu.com),对于Cookie的访问是不能跨域的(如:我们无法在www.baidu.com下访问www.google.com中的Cookie),但当前域中的cookie可以在子域中访问,反之则不行;

 

2. Path

Path表示Cookie所在路径(或者说是目录),我们可以访问本目录及其上级目录(所有的上级目录)中的Cookie,但不能访问子目录中的Cookie。对于相同目录中的Cookie,多次赋值则后面的值会覆盖前面的值。对于不同目录下的同名Cookie的值则互不影响。

在ASP.NET中,Cookie的路径默认是"/",即根目录:

在Chrome浏览器中可以通过开发者工具来查看Cookie:

 

3. 同源策略限制

Cookie受同源策略影响相对较弱,只要请求地址符合:Domain/Path的设定即可将cookie发送至服务器端,无需考虑协议和端口号。如:

home.cnblogs.com/u/Cwj-XFH/,home.cnblogs.com为博客园的二级域名,/u/Cwj-XFH/为访问路径。

 

4. 第三方Cookie

若cookie的域和当前页面的域不同或不兼容(如,一级域名和二级域名可以理解为兼容)的cookie称为第三方cookie,反之则成为第一方cookie。

第三方cookie多用于浏览记录追踪和广告投放,可在浏览器设置中禁用第三方cookie。

 

5. 其它

服务器可以设置cookie的各种属性,如名称,值,过期时间等等。但具体的存储是在客户端,过期时间也以客户端为准而非服务器。一句话:服务器下命令,客户端干活。

Cookie不可跨浏览器访问,如chrome和IE,但同一台计算机上打开两个chrome浏览器则不存在该问题;

Cookie不可跨域访问,见第3条。

浏览器对于各站点存放的cookie数量及大小均有限制;

敏感信息或重要信息不推荐放到cookie中,警惕CSRF攻击;

 

6. 推荐阅读

HTTP cookies

Google 使用的 Cookie 类型

版权声明

本文为作者原创,版权归作者雪飞鸿所有。 转载必须保留文章的完整性,且在页面明显位置处标明原文链接

如有问题, 请发送邮件和作者联系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Cookie、localStorage 和 sessionStorage 都是前端Web开发用于存储数据的技术,但它们在数据的生命周期、存储空间和安全性上有所不同。 1. Cookie: - **概念**: Cookies是由服务器发送给客户端(浏览器)的小型文本文件,用于识别用户并存储一些信息,如登录状态、购物车内容等。 - **存储位置**: 客户端(浏览器)本地,通常被限制在HTTP请求头发送。 - **生命周期**: 可以设置为特定时间过期,也可以设置为浏览会话结束删除。 - **大小限制**: 目前每个域名下的cookies数量有限制,单个cookie的大小也有限制(通常几百KB)。 - **安全问题**: 数据明文存储,可能容易被劫持或篡改。 2. localStorage: - **概念**: 存储在客户端的键值对,主要用于长期保存用户数据,比如用户的首选项设置。 - **存储位置**: 浏览器本地,同源策略限制,仅允许同一域名访问。 - **生命周期**: 直到用户清除浏览数据或浏览器关闭。 - **大小限制**: 比cookies大得多,理论上不受限,但实际应用浏览器可能有最大值限制。 - **安全性**: 相比cookie,安全性稍高,但仍存在跨站脚本攻击(XSS)的风险。 3. sessionStorage: - **概念**: 类似localStorage,但只在当前浏览器会话期间有效,即用户关闭标签页或浏览器窗口后数据会丢失。 - **存储位置**: 与localStorage相同。 - **生命周期**: 会话结束自动删除。 - **大小限制**: 与localStorage类似,受限于浏览器的最大值。 - 共同点:都可用于存储客户端数据,且受同源策略限制。 - 不同点: - 生命周期:cookie和sessionStorage关联于浏览会话,localStorage持久化;sessionStorage在会话结束时删除。 - 安全性:sessionStorage和localStorage比cookie更安全,但都面临XSS攻击风险。 - 大小限制:sessionStorage和localStorage通常更大,但具体受浏览器限制。 - 使用场景:cookie用于临时信息(如保持登录状态),localStorage适合长期存储(如设置),sessionStorage在会话期间存储数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值