cookie.setPath("/"),在Tomcat的webapps目录下的所有目录中共享这个cookie。
cookie.setPath("/app1"),只能在app1应用下获取这个cookie,就算这个cookie是app2产生的,app2也不能访问它。
cookie.setPath("/app1/action"),只能在app1/action目录下获取这个cookie。
我想你应该可以明白了,cookie的路径指的是可以访问该cookie的顶层目录,该路径的子路径也可以访问该cookie。
====
在www.baidu.com中设置的cookie,但需要在zhidao.baidu.com下获取,这样就需要Cookie的setDomain()方法了。
cookie.setPath("/")
cookie.setDomain("baidu.com")//只给出域名的相同部分
response.add(cookie)
要设置cookie的保存路径,可以设置path值,如设置路径为根目录:$.cookie("example", "foo",{path:"/"})
如果要设置路径为/admin,则:
$.cookie("example", "foo",{path:"/admin"})
1.domain表示的是cookie所在的域,默认为请求的地址,如网址为 www.jb51.net/test/test.aspx ,那么domain默认为 www.jb51.net 。而跨域访问,如域A为 t1.test.com ,域B为 t2.test.com ,那么在域A生产一个令域A和域B都能访问的cookie就要将该cookie的domain设置为 .test.com ;如果要在域A生产一个令域A不能访问而域B能访问的cookie就要将该cookie的domain设置为 t2.test.com 。
2.path表示cookie所在的目录,asp.net默认为/,就是根目录。在同一个服务器上有目录如下:/test/,/test/cd/,/test/dd/,现设一个cookie1的path为/test/,cookie2的path为/test/cd/,那么test下的所有页面都可以访问到cookie1,而/test/和/test/dd/的子页面不能访问cookie2。这是因为cookie能让其path路径下的页面访问。
3.浏览器会将domain和path都相同的cookie保存在一个文件里,cookie间用*隔开。
4.含值键值对的cookie:以前一直用的是nam=value单键值对的cookie,一说到含多个子键值对的就蒙了。现在总算弄清楚了。含多个子键值对的cookie格式是name=key1=value1&key2=value2。可以理解为单键值对的值保存一个自定义的多键值字符串,其中的键值对分割符为&,当然可以自定义一个分隔符,但用asp.net获取时是以&为分割符。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)