js操作cookie
cookie介绍(转自wiki)#
HTTP cookie,简称cookie,是用户浏览网站时由网络服务器创建并由用户的网页浏览器存放在用户电脑或其他设备上的小文本文件。
Cookie使Web服务器能够在用户的设备上存储状态信息(如添加到在线商店购物车中的商品)或跟踪用户的浏览活动(如点击特定按钮、登录或记录历史)
属性#
一个cookie可能有多个属性,如Domain、Path、Expires、Max-Age、Secure、HttpOnly,例如:
1 | HTTP/1.0 200 OK |
Domain和Path#
Domain和Path属性定义了cookie的范围。它们告诉浏览器cookie属于哪个网站。Cookies只能设置在当前资源的顶级域及其子域上。
如果服务器未指定cookie的Domain和Path,则它们默认为所请求资源的域和路径[20]。
Expires和Max-Age#
Expires属性定义了浏览器应该删除cookie的时间,格式为Wdy, DD Mon YYYY HH:MM:SS GMT,或者Wdy, DD Mon YY HH:MM:SS GMT(其中YY大于或等于0并且小于等于69)。
此外,也可使用Max-Age将cookie的过期时间设置为某一段时间之后(相对于浏览器接收cookie的时间而言)。但一些浏览器可能不支持Max-Age,如Internet Explorer
Secure和HttpOnly#
Secure属性旨在将cookie加密,使浏览器仅通过安全/加密连接使用cookie。
HttpOnly要求浏览器不要通过HTTP(和HTTPS)以外的渠道使用cookie。这意味着无法通过客户端脚本语言(尤其是JavaScript)访问cookie,因此无法通过跨站点脚本攻击轻易窃取。
原生js操作#
1 | // 读取cookie(会读取全部, 需自行解析) |
第三方库#
https://www.npmjs.com/package/js-cookie
1 | // 设置cookie, 已存在则覆盖(修改) |
更多#
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 J's Blog!
评论
WalineLivere







