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

会话对象 Cookie 四、Cookie的路径

1.Cookie的path属性

Cookie还有一个path属性,可以通过Cookie#setPath(String)方法来设置。你可以使用HttpWatch查看响应中的Set-Cookie中是否存在路径。下面是通过Chrome查看Cookie信息。

也就是说,就算你不设置Cookie的path,Cookie也是有路径的。这个路径就是请求的路径。例如在请求:

http://localhost:8080/cookie_demo/path

时,服务器响应了一个Cookie,那么这个Cookie的默认路径就是/cookie_demo。

如果是在请求:

http://localhost:8080/cookie_demo/path/son

时,服务器响应了一个Cookie,那么这个Cookie的默认路径就是/cookie_demo/path。

2.Cookie 路径的作用:

首先声明一点,path不是指Cookie在客户端存放的路径!不同的浏览器存放Cookie的路径是不同的!!你不能通过Cookie的path来指定Cookie文件的存放路径!!!

那么Cookie的path是干什么的呢?假设你的浏览器当前已经有了两个Cookie:

  • cookie1:name=path1;value=pathvalue1;path=/cookie_demo;
  • cookie2:name=path1;value=pathvalue2;path=/cookie_demo/path;

当访问http://localhost:8080/cookie_demo/*时,请求头中会包含cookie1,而不会包含cookie2。

当访问http://localhost:8080/cookie_demo/path/*时,请求头中会包含cookie1和cookie2。

也就是说,在访问子路径时,会包含其父路径的Cookie,而在访问父路径时,不包含子路径的Cookie

3.Cookie路径的使用

如果你想在BServlet中设置的Cookie,在客户端访问AServlet时也包含在请求头中,那么就需要设置BServlet中的Cookie的path:

  • c2.setPath(“/cookie_demo”):硬编码;
  • c2.setPath(request.getContextpath() + “/”):活编码。

这样就可以设置Cookie的路径,保存在访问AServlet时,也会包含BServlet中添加的Cookie。

Cookie的SetPath设置cookie的路径,这个路径直接决定服务器的请求是否会从浏览器中加载某些cookie。

首先默认情况如果不设置cookie的path,默认是 /项目名称/当前路径的上一层地址如:请求路径:/cookie_demo/servlet/login, cookie的路径:/cookie_demo/servlet

如果我们设置path,如果当前访问的路径包含了cookie的路径(当前访问路径在cookie路径基础上要比cookie的范围小)cookie就会加载到request对象之中。

http://www.dtcms.com/a/33993.html

相关文章:

  • 【PostgreSQL】如何通过调整PostgreSQL配置参数提高数据库性能
  • Git Repo下如何制作一个patch文件
  • Oracle:执行DELETE语句长时间无响应的排查步骤及解决方案
  • 超多目标优化:基于导航变量的多目标粒子群优化算法(NMOPSO)的无人机三维路径规划,MATLAB代码
  • 机器视觉--Halcon的数据结构(数组)
  • STM32单片机开发(6).离散PID公式:位置式PID 增量式PID
  • Unity 3D模型边缘锯齿严重
  • Android 技术栈
  • 跟着李沐老师学习深度学习(十四)
  • Visual Studio更新说明(关注:.NET+AI生产力)
  • 本地部署Qwen2.5-VL-7B-Instruct多模态视觉大模型(Windows篇)
  • docker部署安装Seata服务
  • 小波变换背景预测matlab和python样例
  • 从头再来!社招找工作——算法题复习九:动态规划
  • 在 Mac ARM 架构上使用官方安装包安装 MySQL
  • 大语言模型(LLM)微调技术笔记
  • PH热榜 | 2025-02-23
  • PyEcharts 数据可视化:从入门到实战
  • NoSQL注入攻击如何防范
  • 什么是完全前向保密(PFS)?
  • Redis底层数据结构
  • 【行业解决方案篇五】【DeepSeek智慧城市:交通流量预测系统】
  • 《解锁光量子制备:开启量子科技新时代》:此文为AI自动生成
  • C++ 继承,多态
  • 原生input修改input:-internal-autofill-selected自动填入携带的背景色
  • 计算机毕业设计SpringBoot+Vue.jst0甘肃非物质文化网站(源码+LW文档+PPT+讲解)
  • DevEco Studio常用快捷键以及如何跟AndroidStudio的保持同步
  • 【llm落地】从零到一,用DeepSeek打造智能BI工具:自然语言驱动数据洞察
  • 数据结构:基数排序(c++实现)
  • 树形DP(树形背包+换根DP)