cookie 使用

介绍

Cookie 技术其实是浏览器端的数据存储技术, 解决了不同请求需要使用相同的请求数据的问题。 我们把请求需要共享的请求数据, 存储在浏览器端, 避免用户进行重复的书写请求数据。 但是哪些数据需要使用 Cookie 技术存储起来是一个主观问题, 需要在后台进行响应的时候来告诉浏览器, 有些数据其他请求还会使用,需要存储起来

Cookies解决了不同请求发送之间的数据共享问题

比如, 在本地cookies存储用户名和密码, 下次进入同一个网站的时候, 服务器会读取cookies信息, 不用重复登录

特点

  • 浏览器端的数据存储技术
  • 适合少量数据
  • 键值对
  • 不安全

使用

创建一个cookie, 并通知浏览器临时存储

// 浏览器接收到服务器通知, 临时存储在浏览器内存中一个cookie, 当浏览器再次访问此网站时候, 请求头中会默认有一个coockie数据
Cookie c = new Cookie("key", "value");
resp.addCookie(c);

创建一个cookie, 并通知浏览器保存到本地指定事件, 设置指定路径可发送此cookie

Cookie c = new Cookie("key", "value");
// 存储cookie到磁盘中, 并保存3天
c.setMaxAge(3 * 24 * 3600);
// 只有当浏览器访问path页面的时候, 才会请求头默认发送此cookie, 路径为uri
c.setPath("/cookies/path");
resp.addCookie(c);

获取数据

// 如果没有cookies数据, 会返回一个null
Cookie[] cookies = req.getCookies();
for (Cookie cookie : cookies) {
    System.out.println(cookie.getName() + ":" + cookie.getValue());
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值