cookie不设置有效期多久过期_cookie~session & webStorage

0d6e35c721ac97f38b6e8e636824c974.png

1、产生原因

由于http(超文本传输语言)是一种无状态协议,不能以状态来区分管理请求和响应。为了解决这一问题 cookie & session 应运而生

2、Cookie & session

  • 它们都是由服务端生成

cookie

  1. cookie保存在客户端(硬盘或内存中),可以通过分析本地cookie模拟,安全性较差
  2. 大小限制为4KB左右(不同浏览器会有差别)
  3. cookie中只能保管ASCII字符串,并需要通过编码方式存储为Unicode字符或者二进制数据。;
  4. 可以通过 set-cookie : path=/ ,来设置cookie的访问路径,非路径下无法访问
  5. 可以设置有效期

session

  1. session保存在服务端内存中,安全性较好,但是对于用户较多的网站,服务端内存压力较大
  2. 大小无限制
  3. session中能够存储任何类型的数据,包括且不限于string,integer,list,map等
  4. 不能设置路径,任何地方都可以访问到
  5. session依赖于客户端cookie,如果客户端禁用cookie则需要重写url,增加了风险性
  6. session有效期依赖于名为JSESSIONID的cookie,而cookie JSESSIONID的过期时间默认为-1,只需关闭窗口该session就会失效,因而session不能达到长期有效的效果。

3、webStorage

webStorage包括localStorage和sessionStorage,他们只能存储字符串类型数据。

localStorage

localStorage 是 HTML5 标准中新加入的技术,它存储在客户浏览器端,除非被删除否则永久有效

sessionStorage

sessionStorage 与 localStorage 类似,区别在于保存数据的生命周期不同。在页面会话期间可用,当前页面关闭后sessionStorage 中的数据就会被清空。

差异表

f79e21094a6ed1991e869a3eb93114dd.png

4、操作方法

cookie

var 

使用方式:

cookie

jQuery cookie

需要先引入jquery 与 jquery.cookie

添加会话cookie :

$

创建一个cookie并设置有效时间为 7天

$

创建一个cookie并设置 cookie的有效路径

$

读取cookie

$

删除cookie

$

可选参数说明:

$

localStorage

存: localStorage.setItem("key", "value")

取:let val = localStorage.getItem("key")

删:localStorage.removeItem("key")

全删:localStorage.clear()

sessionStorage

存: sessionStorage.setItem("key", "value")

取:let val = sessionStorage.getItem("key")

删:sessionStorage.removeItem("key")

全删:sessionStorage.clear()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值