cookie

最基本的行为:实现本地存储。

分为session cookie(临时cookie,只在本次打开页面存在,关闭页面后删除)以及permanent cookie(持久cookie,设置了过期时间)

属性

domin: 域名

expires: 过期时间(绝对时间,兼容没问题,比较常用,值为session时代表时临时cookie)

Max-Age: 距离过期的秒数(有兼容性问题,ie8以下不能用)

path:路径

Secure: 只有在https下才发送

httpOnly:不能通过js的document.cookie访问

name

value

 里面的sameSite属性是谷歌浏览器独有的,用处是防御xsrf

cookie 虽然可以储存本地信息,但是不适合储存大量的信息,因为 cookie 还有个特点是每次请求都会带上这个域相关的所有 cookie,就是说,cookie 会影响浏览器请求的大小,因此我们要尽量保持 cookie 体积小,还有尽量用于保存跟用户相关的信息。同时,浏览器本身对 cookie 总大小也有限制,目前是不允许超过 4k,超过的会丢失

js操作cookie:

通过document.cookie获取,

 增加:增加cookie的方式如下,这个方式看上去像直接赋值,但其实只是多加了一条cookie,不会覆盖原来的cookie。注意设置cookie的domain只能设置上级域名,不能跨域,否则设置不生效,path一般设为根目录‘/’,有特殊场景可以设置为具体子目录。

document.cookie = encodeURIComponent('user') + '=' + encodeURIComponent('111') + 'domain=上级域名'

删除:直接在该cookie上设置exipires=‘过期时间’,例如

document.cookie = encodeURIComponent('user') + '=' + encodeURIComponent('111') + 'expires=' + new Date(0)

使用cookie保存用户信息

 用户登录后服务器会通过set-cookie响应头返回用户id这些信息,浏览器收到后会把这些信息设置到cookie里,这样后面再发请求会把这些cookie带上,于是服务器就能区分该用户。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值