Cookie学习


Cookie是什么

是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据,由用户客户端计算机暂时或永久保存的信息,键值对的数据结构存储在客户端上。
在这里插入图片描述


第一次使用session时,创建当前客户端的cookie返回给客户端,并在接下来的请求中携带cookie

一、如何创建Cookie

  1. 首先通过Cookie类创建Cookie对象
    Cookie cookie = new Cookie(key, value)
  2. 将创建的cookie保存在客户端上
    response.addCookie(cookie)

二、从客户端中获取 Cookie

  1. 首先通过request的方法getCookies()获取Cookie数组
  2. 再循环遍历数组通过字符串比较获取需要的Cookie

三、修改Cookie的值

方案一

  • 先创建一个要修改的同名(指的就是 key)的 Cookie 对象
  • 在构造器,同时赋于新的 Cookie 值
  • 调用 response.addCookie(Cookie)在客户端保存修改

方案二

  • 先查找到需要修改的 Cookie 对象
  • 调用 setValue(newValue)方法赋于新的 Cookie 值
  • 调用 response.addCookie(Cookie)在客户端保存修改

四、Cookie的生命周期

通过调用Cookie的方法setMaxAge()进行控制

  • 正数,表示在指定的秒数后过期
  • 负数,表示浏览器一关,Cookie 就会被删除(默认值是-1)
  • 零,表示马上删除 Cookie

五、Cookie的路径

Cookie 的 path 属性可以有效的过滤哪些 Cookie 可以发送给服务器。哪些不发。 path 属性是通过请求的地址来进行有效的过滤。
假设有以下两个Cookie
CookieA :path=/工程路径
CookieB :path=/工程路径/abc

请求地址及Cookie发送详情如下:

  • http://localhost:8080/工程路径/a.html
    CookieA 发送
    CookieB 不发送
  • http://localhost:8080/工程路径/abc/a.html
    CookieA 发送
    CookieB 发送
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值