当前位置:  开发笔记 > 前端 > 正文

Cookie路径及其对子文件夹页面的可访问性

如何解决《Cookie路径及其对子文件夹页面的可访问性》经验,为你挑选了3个好方法。

假设我有一个域名网站:www.example.com

如果我使用路径' / '设置cookie,则可以通过域中的所有页面访问cookie,例如:

www.example.com/page1.html

www.example.com/subfolder1/page1.html

www.example.com/subfolder1/moresubfolder1/page1.html等

如果我们将cookie设置为路径' / subfolder1 ',该cookie是否可用于该文件夹下的任何页面或子文件夹?例如:

www.example.com/subfolder1/moresubfolder/page1.html

所以,如果没有,我猜,我别无选择,只能对这些cookie使用路径'/',对吗?



1> Alex Barrett..:

如果我们将cookie设置为路径'/ subfolder1',那么cookie是否可用于文件夹下的任何页面或子文件夹?

是.cookie 可用于所有页面和子目录.


有关相关规范,请参见http://stackoverflow.com/questions/8014024/set-cookie-wildcard-path.对于那些不知道的人,cookie只能访问指定的路径和任何子路径,没有超级路径.因此"/ folder /"无法访问路径"/ folder/subfolder1 /"的cookie.我对这一点感到头疼.

2> 小智..:

如果我们将cookie设置为path /subfolder1,则可以访问示例中的以下页面:

www.example.com/subfolder1/page1.html
www.example.com/subfolder1/moresubfolder1/page1.html
等.

但是,该页面www.example.com/page1.html将不可访问,因为它不属于允许的路径.



3> Michael..:

通过重复使用此答案的一部分来消除一些歧义:

如果至少满足下列条件之一,请求路径路径将匹配给定的cookie路径:

cookie路径和请求路径是相同的.

cookie路径是请求路径的前缀,cookie路径的最后一个字符是%x2F("/").

cookie-path是请求路径的前缀,而cookie
路径中未包含的请求路径的第一个字符是%x2F("/")字符.

/subfolder1路径上设置cookie 和/subfolder1/路径之间存在轻微(但可能很重要)的区别.

如果你依赖前者,你的请求路径需要以"%x2F("/")字符"(正斜杠)开头,以保证所需的行为.例如,看一下链接的答案.

设置cookie路径只是为了/避免任何边缘情况,但正如你所说 - cookie可以访问整个域.

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有