cookie中path路径探讨

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cookie中path路径探讨相关的知识,希望对你有一定的参考价值。

参考技术A

上篇文章 中说:cookie必须在 同一网站 下且 cookie的path路径为当前url或者是当前url的父级 时才是共享的。
具体怎么理解呢?看下面解释

首页介绍下php中设置cookie的函数setcookie()

需要注意的且常用的有俩点

做几个测试就知道了,主要测试以下几点

设置一个cookie变量a,以我们上面的预测,客户端的path应为 /

看到path为 /, 也就是说在整个域名内任何path的cookie都应该能访问该cookie变量a

设置一个cookie变量b,以我们上面的预测,该cookie变量b的path应为/api/test,而且应该包含path为/api/test,/api和/的cookie变量,也就是包含我们上面设置的cookie变量a

发现path确实/api/test,证明我么的第一个观点,而发现能共享cookie变量a,也证明了我们的第二个观点。

Cookie path的设置


 

cookie path 设置

 

IE对如下的cookie路径设置和chrome和firefox是完全不一样的:

cookie.setPath("");



  1. 实践证明IE会忽略这个path,而chrome和firefox则会认为是设置了。因为根据cookie规范,如果设置了path,那么只有当访问路径中包含了这个path的url时才会发送cookie到服务器;如果没有设置path,那么只有当访问和设置cookie同样的路径时才会发送cookie到服务器。可惜的是这里IE忽略了,因此会按照后面的来处理cookie,而chrome和firefox则会认为设置了path,那么理所当然的任何访问路径都会携带cookie。

因此:

 

if(path.equals(""))
path = "/";

的方式来处理



 

以上是关于cookie中path路径探讨的主要内容,如果未能解决你的问题,请参考以下文章

Cookie的压缩以及字符集简单的探讨

SwiftUI之深入解析高级动画的路径Paths

探讨Web开发中的Session存储与管理

探讨AI+新模式,百度大脑提供纺织企业数字化转型新路径

4 超链接和路径

中国企业管理软件走向全球化国际化的路径探讨