cookie的作用范围

同一浏览器,同一路径

默认情况下,

上级目录设置的cookie,下级目录可以获取到,

而下级目录设置的cookie,上级目录不能获取。

即:在一个页面设置cookie,那么这个页面的同一路径和子路径下的页面都可以获取cookie

示例如下:family文件夹下有children文件夹和a.html,b.html;chilren文件夹下有aa.html

若在a.html设置cookie:one=father;那么a.html,b.html和aa.html都可以获取到cookie:one=father;

然后再aa.html设置cookie:two=son,那么只有aa.html可以获取到cookie:two=son,

a.html和b.html都获取不到cookie:two=son

问题如何让上级获取到下级目录设置的cookie呢

则设置path属性,

设置整站都可以访问,上级就可以获取下级设置的cookie了

document.cookie = "key=value;path=/"

如果还需要设置cookie的到期时间

需要expires属性

格式为

document.cookie = "key=value;expires=到期时间" 

示例

  var date = new Date();
//设置有效时间为一个小时,一小时过后,将被浏览器删除
var expireTime = 30*60 * 1000;
date.setTime(date.getTime() + expireTime);
//escape()的作用:一种编码方式
document.cookie = "key=value;expires="+ date.toGMTString();

若cookie需设置多个属性,属性之间用分号";"隔开

示例同时需要设置expires和path属性

document.cookie = "key=value;expires=到期时间;path=/" 

cookie创建的函数

function saveCookie(key, value) {
var date = new Date();
//设置过期时间为一个小时
var expireTime = 60*60 * 1000;
date.setTime(date.getTime() + expireTime);
//escape()的作用:一种编码方式
//设置cookie过期时间为一小时以后,整站可以访问cookie
document.cookie = key + "=" + escape(value) + ";expires="
+ date.toGMTString();+"path=/";
}

获取cookie函数

function getCookie(key) {
// 可以搜索RegExp和match进行学习
var arr, reg = new RegExp("(^| )" + key+ "=([^;]*)(;|$)");
if (arr = document.cookie.match(reg)) {
// unescape的作用解码通过escape编码的字符串
return unescape(arr[2]);
} else {
return null;
}
}

Cookie的作用范围、设置、创建、获取的方法的更多相关文章

  1. jquery尺寸和jQuery设置和获取内容方法

    一.jquery尺寸 jQuery 提供多个处理尺寸的重要方法: width()    设置或返回元素的宽度(不包括内边距.边框或外边距),括号中可填数值宽度参数,无单位 height()   设置或 ...

  2. Python Flask,cookie,session ,设置、获取、删除

    使用Response类的set_cookie()方法可以设置cookie: Response.set_cookie( key, //键 value='', //值 max_age=None, //秒为 ...

  3. cookie值的设置,获取及删除

    <script> function setCookie( key, val, expire){ var dateTime = new Date(); dateTime.setTime( d ...

  4. django设置并获取cookie/session,文件上传,ajax接收文件,post/get请求及跨域请求等的方法

    django设置并获取cookie/session,文件上传,ajax接收文件等的方法: views.py文件: from django.shortcuts import render,HttpRes ...

  5. session,cookie,sessionStorage,localStorage的相关设置以及获取删除

    一.cookie 什么是 Cookie? "cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用 JavaScrip ...

  6. php设置和获取cookie

    php设置和获取cookie setcookie()调用只带有name参数的setcookie(); ()使失效时间为time()或time-; <?php setcookie(); PHP提供 ...

  7. JavaScript中的内置对象-8--4.date对象中-获取,设置日期时间的方法; 获取,设置年月日时分秒及星期的方法;

    学习目标 1.掌握创建日期对象的方法 2.掌握date对象中获取日期时间的方法 3.掌握date对象中设置日期时间的方法 如何创建一个日期对象 语法:new Date(); 功能:创建一个日期时间对象 ...

  8. Thread类的常用方法_获取线程名称的方法和Thread类的常用方法_设置线程名称的方法

    构造方法: public Thread();分配一个新的线程对象 public Thread(String name);分配一个指定名字的新的线程对象 public Thread(Runnable t ...

  9. js设置、获取单值cookie和多值cookie

    js设置.获取单值cookie和多值cookie,代码如下: var CookieUtil = (function () { var Cookie = function () { // 获取单值coo ...

随机推荐

  1. HDU - 6143 Killer Names(dp记忆化搜索+组合数)

    题意:从m种字母中选取字母组成姓名,要求姓和名中不能有相同的字母,姓和名的长度都为n,问能组成几种不同的姓名. 分析: 1.从m种字母中选取i种组成姓,剩下m-i种组成名. 2.i种字母组成长度为n的 ...

  2. HYSBZ - 1588 营业额统计 (伸展树)

    题意:营业额统计 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司的账本,账本上记录了公司成立以来每天的营业额.分析营 ...

  3. MSDN原版系统镜像ISO下载站

    官网 网址1:http://www.imsdn.cn/ Windows 10 最新版本 1909 正式版 ISO 镜像下载 (微软 MSDN / VL 官方原版系统) 网址2:https://www. ...

  4. js中const,val,let 的区别

    1. const定义的变量不可以修改,而且必须初始化. 2. var定义的变量可以修改,如果不初始化会输出undefined,不会报错. 3. let是块级作用域,函数内部使用let定义后,对函数外部 ...

  5. python 检测端口是否被占用

    前记   python中有些常用的东西,虽然小,但是非常实用.这里就做个备忘吧. 实例 检测端口是否被占用. ''' -- coding: utf-8 -- import os import sock ...

  6. 一百零八、SAP的OO-ALV之二,创建屏幕Screen

    一.在资源管理器,右键->创建屏幕 二.输入4位数字 三.输入屏幕的描述 四.在逻辑流里面PBO用于显示屏幕,PAI用于用户交互. 五.在元素清单里面,在屏幕中的所有元素都是在元素清单中的

  7. springboot - 映射 HTTP Response Status Codes 到自定义 JSP Error 页面

    1.总览 2.代码 1).pom.xml <dependencies> <dependency> <groupId>org.springframework.boot ...

  8. UVA - 1605 Building for UN (联合国大楼)

    题意:一个联合国大楼每层都有数量相等大小相同的格子,将其分配给n个国家,使任意两个不同的国家都相邻(同层有公共边或相邻层的同一个格子). 分析:可以设计一个只有两层的大楼,第一层每个国家占一行,第二层 ...

  9. windows LARGE_INTEGER 错误码输出格式

    如果是负数,I32X 版权声明:本文为博主原创文章,未经博主允许不得转载.

  10. bfs--P1301 魔鬼之城

    *传送 求最小步数,bfs求解.因为题目要求可以走八个方向(上下左右和对角线),所以两个方位数组来找八个方向 int dirx[9]={0,0,1,1,1,0,-1,-1,-1}; int diry[ ...