当前位置: 首页 > news >正文

删除Cookie原理

在这里插入图片描述
在这里插入图片描述

@WebServlet("/deletecookie")  // 这个注解指定了Servlet的URL映射路径
public class DeleteCookieServlet extends HttpServlet {  // 定义一个继承自HttpServlet的类@Override  // 重写父类的方法protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// 创建一个新的Cookie对象Cookie cookie = new Cookie("name", "设置信息");  // "name"是Cookie的名称,"设置信息"是Cookie的值// 设置Cookie的路径cookie.setPath(request.getContextPath());  // 使用当前Web应用的上下文路径// 将Cookie的最大存活时间设置为0,这会导致浏览器立即删除这个Cookiecookie.setMaxAge(0);  // 0表示立即删除// 设置Cookie为HttpOnly,提高安全性cookie.setHttpOnly(true);  // true表示只允许HTTP(S)访问,禁止JavaScript等脚本访问// 将Cookie添加到HTTP响应中,发送给浏览器response.addCookie(cookie);// 在服务器控制台打印一条消息,表示Cookie已被删除System.out.println("删除了cookie");}
}
  1. Name(名称): 这是Cookie的标识符。例如,“username”。

  2. Value(值): 这是与Cookie名称相关联的实际数据。例如,“john_doe”。

  3. Domain(域): 指定哪些主机可以接收Cookie。例如,“example.com”。

  4. Path(路径): 指定服务器上的哪些路径可以接收Cookie。例如,"/"表示整个网站。

  5. Expiration(过期时间): 指定Cookie何时失效。可以是具体日期或"Session"(表示浏览器关闭时Cookie就失效)。

  6. Secure(安全标志): 如果设置为true,则Cookie只能通过HTTPS发送。

  7. HttpOnly(HTTP专用): 如果设置为true,JavaScript不能访问这个Cookie,这增加了安全性。

在您提供的代码中:

  • Cookie cookie = new Cookie("name", "设置信息") 设置了Name和Value。
  • cookie.setPath(request.getContextPath()) 设置了Path。
  • cookie.setMaxAge(0) 设置了Expiration(在这个例子中,0表示立即删除)。
  • cookie.setHttpOnly(true) 设置了HttpOnly标志。

这个图表和解释应该能帮助你更好地理解Cookie的结构和在代码中如何操作Cookie。记住,删除Cookie实际上是通过创建一个同名的新Cookie,并将其过期时间设置为过去的时间(在这个例子中是0,表示立即过期)来实现的。


http://www.mrgr.cn/news/27774.html

相关文章:

  • 丑数动态规划
  • vscode报错:Connecting with SSH time-out.
  • uniapp路由跳转
  • 2024 同一个网段,反弹shell四种方法【linux版本】bash、python、nc、villian反弹shell图解步骤
  • [白月黑羽]关于仿写类postman功能软件题目的解答
  • C语言指针初步(1)
  • 智慧农业数据集(一)
  • C++_20_多态
  • Xilinx系FPGA学习笔记(八)FPGA与红外遥控
  • TensorFlow 笔记
  • 离线数仓DWD层
  • 【QT】定时器使用
  • 第R3周:LSTM-火灾温度预测:3. nn.LSTM() 函数详解
  • 鸿蒙之Hello Word 遇坑总结 mac系统 不能预览 提示 Only files in a module can be previewed 解决办法
  • 分贝转换 1 mVpp = 9.03dBmV
  • RISCV64应用符号解析的实现机制
  • 响应式CSS 媒体查询——WEB开发系列39
  • 艾里斑(Airy Disk)与瑞利判据(Rayleigh criterion)
  • 2024上半年国产操作系统卖疯了!麒麟4.9亿,统信1.9亿!
  • 41.在 CSS 中使用 clamp() 实现响应式排版
  • 【智路】智路OS Perception Fusion Service
  • 暗界正方形之谜
  • 复杂情感识别系统
  • CAD_Electrical 2022使用记录
  • 【加密算法基础——RSA加密特点分析及解密方式】
  • Java面向对象六大设计原则总结(超级详细,附有代码、图解以及案例)