热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

cookie中path路径探讨

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

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

首页介绍下php中设置COOKIE的函数setCOOKIE()

setCOOKIE(name,value,expire,path,domain,secure)
COOKIE中path路径探讨
image

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

  • expire:可选。规定 COOKIE 的过期时间。time()+3600 将设置 COOKIE 的过期时间为1小时。如果这个参数没有设置,那么 COOKIE 将在 session结束后(即浏览器关闭时)自动失效。和我们上篇文章中说的一样:如果不设置过期时间的话,客户端中expire显示的是session。
  • path:可选。规定 COOKIE 的服务器路径。如果路径设置为 “/”,那么该COOKIE 将在整个域名内有效。如果路径设置为 “/test/”,那么 该COOKIE 将在 test 目录下及其所有子目录下有效,也就是/test和/test/aa目录下有效,也就是子目录能获取到父级目录的COOKIE,父级目录的COOKIE在子目录下共享。。默认的路径值是 COOKIE 所处的当前目录,但我测试默认的路径值是 COOKIE 所处目录的上级目录

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

  • COOKIE不设置路径,默认path是当前目录还是当前目录的上级目录?
  • 如果某COOKIE路径设置为 “api/test”,那么在该目录下能够获取到在 /api/test ,/api和/目录内的COOKIE,这3目录下该COOKIE可以共享
  1. 写一个api,路由为 /api。

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

    public function test(){
        setCOOKIE('a',111);
        echo 1;
    }
  1. 浏览器访问该api

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

COOKIE中path路径探讨
image
  1. 在写一个api,路由为 /api/test/COOKIE

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

    public function COOKIE(){
        setCOOKIE('b',222);
        echo 2;
    }
  1. 访问该api

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

COOKIE中path路径探讨
image
  1. 那么反向验证下,此时第一个api还是只能访问COOKIE变量a,而不能访问COOKIE变量b。发现证明是正确的

    COOKIE中path路径探讨
    image

推荐阅读
  • php初级面试题之简述题(二):PHP初级面试题是刚要找工作的没什么经验的程序员看的,这对我们出去面试提供了不小的帮助,面试官会常常的考到我们,而这时候看的面试题就起了大作用了。1 ... [详细]
  • 前后端分离 以及使用工具 基础
    前后端分离开发YapiSwagger项目部署在项目中,前端代码和后端代码混合在一起,是存在问题的,存在什么问题呢?主要存在以下几点问题:1).开发人员同时负责前端和后 ... [详细]
  • Windows7上任务栏中的.NET进度条如何让我的winforms应用程序在Windows7的任务栏图标中显示其进度条?例如:带下载的chrome。谢谢!!迭戈您必须下载适用于. ... [详细]
  • Apifox使用攻略
    目录前言 ... [详细]
  • 测试用例的重要局部导入依赖{代码}capabilities设置初始化driverwebdriver.remote 隐式期待,加强用例的稳定性元素定位与操作断言capabilities设置官网文档阐明罕用参数键形容值noReset在以后session下不会重置利用的状态。默认值为falsetrue,falsefullReset(iOS)删除所有的模拟器文件夹。(Android)要革除 ... [详细]
  • 如何跨站调用php(2023年最新整理)
    导读:本篇文章编程笔记来给大家介绍有关如何跨站调用php的相关内容,希望对大家有所帮助,一起来看看吧。本文目录一览:1、php如何在一个 ... [详细]
  • 大哥们好。问一个问题。有两个网站:就称为网站1与网站2;要同步他们之间一些数据或让他们之间的用户可以互联。就是网站1的会员在网站1登陆后,再转到网站2,能享受会员的待遇;而网站 ... [详细]
  • php如何禁止访问者登录(2023年最新整理)
    导读:本篇文章编程笔记来给大家介绍有关php如何禁止访问者登录的相关内容,希望对大家有所帮助,一起来看看吧。本文目录一览:1、怎样禁止客 ... [详细]
  • JavaScript使ifram跨域相互访问及与PHP通信的实例_javascript技巧
    iframe与主框架相互访问方法1.同域相互访问假设A.html ... [详细]
  • 1、什么是javascript?答:网景面向对象的脚本语言客服端控制2、为什么学习javascript?答:注入思想,提高用户体验,兼容性好,入门简单,跨平台,减轻服务器的压力。3 ... [详细]
  • 开发笔记:AJAX了解内容
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了AJAX了解内容相关的知识,希望对你有一定的参考价值。1.什么是AJAX?AJAX ... [详细]
  • 微信小程序如何实现图片放大预览功能
    微信小程序|小程序开发小程序,放大,图片微信小程序-小程序开发微信小程序越来越流行,程序员也在不断接触微信小程序的开发,本篇文章我们就教大家一种微信小程序:当点击图片时,当前图片放 ... [详细]
  • 导读:本篇文章编程笔记来给大家介绍有关php怎么遍历对象的相关内容,希望对大家有所帮助,一起来看看吧。本文目录一览:1、如何用php将数 ... [详细]
  • 绑定完成的汗青绑定的基础是propertyChange事宜。怎样得知viewModel成员值的转变一直是开辟MVVM框架的主要题目。主流框架的处置惩罚有一下三大类:别的开辟一套AP ... [详细]
  • 使用Swoole的时候出现以下问题,如何解决呢?不是太懂,希望高手们能帮帮忙!谢谢了!是运行https://github.com/matyhtf/webim里的开源项目:matyh ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有