Cookie 相关的一些小知识点

设置 Cookie 的 domain 时,前面带点和不带点的区别?

  • 带点:父域名和任何子域名都可以访问
  • 不带点:只有完全一样的域名才可以访问,IE 除外,仍然支持子域名访问

服务端设置 cookie 之后发生了什么?

response.addCookie(cookie);

实际上,服务端设置 cookie 之后,只是将 cookie 种在 response header 的 set-cookie 中,待请求完成,浏览器收到响应后会将其存储。若未设置 Expires/Max-Age,则浏览器关闭后 cookie 被删除,若设置了 Expires/Max-Age 且时间未过期,则不会随着浏览器的关闭而被删除,下次打开该站点 cookie 值仍然存在!

image

浏览器每次请求服务端接口时,request header 中都会携带 cookie 值给服务端,服务端可以根据其来判断登录状态

image

Cookie 的 HttpOnly 属性

默认为空,允许客户端通过 js 操作 cookie,若此属性设置为 true,则只有在 http 请求的 request header 中会携带此 cookie,而不能通过 document.cookie 来访问此 cookie,意在提供一个安全的措施来阻止通过 js 发起的跨站脚本攻击(XSS)窃取 cookie 的行为

Cookie 的作用范围

比如 aaa.com 访问 bbb.com 站点的 API(如 bbb.com/passport/login),显然 Request URL 是在 bbb.com 下,则 http 的 request header 携带的 cookie 是 domain 为 bbb.com 的 cookie

若 aaa.com 访问同域名(即 aaa.com,端口可以不同)下的 API,显然 Request URL 是在 aaa.com 下,则 http 的 request header 携带的 cookie 是 domain 为 aaa.com 的 cookie

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值