cookie分号后面没有值_Cookie的属性(cookie的设置、获取和删除)
每个cookie都有四个可选的属性,他们分别控制cookie的生存周期、可见性、安全性等。
Cookies最初设计时,是为了CGI编程。但是,我们也可以使用Javascript脚本来操纵cookies。在本文里,我们将演示如何使用Javascript脚本来操纵cookies。(如果有需求,我可能会在以后的文章里介绍如何使用Perl进行cookie管理。但是如果实在等不得,那么我现在就教你一手:仔细看看CGI.pm。在这个CGI包里有一个cookie()函数,可以用它建立cookie。但是,还是让我们先来介绍cookies的本质。
在Javascript脚本里,一个cookie 实际就是一个字符串属性。当你读取cookie的值时,就得到一个字符串,里面当前WEB页使用的所有cookies的名称和值。每个cookie除了name名称和value值这两个属性以外,还有四个属性。这些属性是: expires过期时间、 path路径、 domain域、以及 secure安全。
Expires– 过期时间。指定cookie的生命期。具体是值是过期日期。如果想让cookie的存在期限超过当前浏览器会话时间,就必须使用这个属性。当过了到期日期时,浏览器就可以删除cookie文件,没有任何影响。
Path– 路径。指定与cookie关联的WEB页。值可以是一个目录,或者是一个路径。如果/head/index.html 建立了一个cookie,那么在/head/目录里的所有页面,以及该目录下面任何子目录里的页面都可以访问这个cookie。这就是说,在/head/stories/articles 里的任何页面都可以访问/head/index.html建立的cookie。但是,如果/zdnn/ 需要访问/head/index.html设置的cookes,该怎么办?这时,我们要把cookies的path属性设置成“/”。在指定路径的时候,凡是来自同一服务器,URL里有相同路径的所有WEB页面都可以共享cookies。现在看另一个例子:如果想让 /head/filters/ 和/head/stories/共享cookies,就要把path设成“/head”。
Domain – 域。指定关联的WEB服务器或域。值是域名,比如goaler.com。这是对path路径属性的一个延伸。如果我们想让dev.mycompany.com 能够访问bbs.mycompany.com设置的cookies,该怎么办? 我们可以把domain属性设置成“mycompany.com”,并把path属性设置成“/”。FYI:不能把cookies域属性设置成与设置它的服务器的所在域不同的值。
Secure – 安全。指定cookie的值通过网络如何在用户和WEB服务器之间传递。这个属性的值或者是“secure”,或者为空。缺省情况下,该属性为空,也就是使用不安全的HTTP连接传递数据。如果一个 cookie 标记为secure,那么,它与WEB服务器之间就通过HTTPS或者其它安全协议传递数据。不过,设置了secure属性不代表其他人不能看到你机器本地保存的cookie。换句话说,把cookie设置为secure,只保证cookie与WEB服务器之间的数据传输过程加密,而保存在本地的cookie文件并不加密。如果想让本地cookie也加密,得自己加密数据。
functionsetCookie(name,value){
varname=escape(name);
varvalue=escape(value);
varexpires=newDate();
expires.setTime(expires.getTime()+8760*3600000);
varpath=";path=/";
var_expires=(typeofhours)=="string"?"":";expires="+expires.toUTCString();
document.cookie=name+"="+value+_expires+path;
}
functionsetCookie2(name,value,domain){
varname=escape(name);
varvalue=escape(value);
varexpires=newDate();
expires.setTime(expires.getTime()+3600000);
var_expires=(typeofhours)=="string"?"":";expires="+expires.toUTCString();
document.cookie=name+"="+value+";path=/"+_expires+";domain="+domain;
}
//获取cookie值
functiongetCookie(name){
varname=escape(name);
//读cookie属性,这将返回文档的所有cookie
varallcookies=document.cookie;
//查找名为name的cookie的开始位置
name+="=";
varpos=allcookies.indexOf(name);
//如果找到了具有该名字的cookie,那么提取并使用它的值
if(pos!=-1){
varstart=pos+name.length;
varend=allcookies.indexOf(";",start);
if(end==-1)end=allcookies.length;
varvalue=allcookies.substring(start,end);
returnunescape(value);
}
elsereturn"";
}
//删除cookie
functiondeleteCookie(name){
varname=escape(name);
varexpires=newDate(0);
varpath=";path=/";
document.cookie=name+"="+";expires="+expires.toUTCString()+path;
}
//cookie设置获取删除
function setCookie(key,value,day){
document.cookie=key+"="+value+";expires="+day*24*60*60;
}
function getCookie(key){
for(var i=0;i
if(document.cookie.split(";")[i].split('=')[0]=key){
return document.cookie.split(';').split('=').[1];
}
}
}
function deleteCookie(key){
//setCookie(key,'',-1)
document.cookie=key+"='';expires="+(-1);
}
cookie分号后面没有值_Cookie的属性(cookie的设置、获取和删除)相关推荐
- cookie分号后面没有值_浏览器Cookie介绍
Web应用程序是使用HTTP协议传输完成的.HTTP协议是无状态的协议.当数据交换完毕以后,客户端与服务器端的连接就会关闭.当再次交换数据的时候需要重新建立新的连接.这就意味着服务器无法从连接上跟踪会 ...
- asp.net cookie操作-添加cookie,添加键值,移除cookie,移除键值
1 public class Cookies 2 { 3 /// <summary> 4 /// 添加cookie 5 /// </summary> 6 /// <par ...
- Cookie的设置获取和删除
关于Cookie操作的实验,包括设置,获取和删除. 设置Cookie name[必选] value[必选] expiredays[必选] setCookie getCookie 操作Cookie GE ...
- 37.Django中设置获取和删除cookie
引言--我们都知道HTTP(超文本传输协议)是一个无状态的协议. 那么客户端和服务器都是怎么记录登录的状态的呢--也就是怎么维持登录的呢? (比如:你在浏览器中登录过了爱奇艺账号,哪怕你网页关闭了,只 ...
- 面试题-js获取cookie中存储的值?
js获取cookie中存储的值? 1.cookie是浏览器提供的一种机制,它将document 对象的cookie属性提供给JavaScript.可以由JavaScript对其进行控制,而并不是Jav ...
- html cookie传参,页面间固定参数,通过cookie传值的实现方法
最后在做的页面,比如用户数据(用户头像,名称,年龄)这些信息,因为大部分页面都要用,之前是通过url地址传,另一页面接收.考虑到这样做会让url过长,因此,尝试使用cookie,把固定的值保存在coo ...
- JS创建、获取、删除 cookie 方法
js 创建 cookie 方法 // 没有设置 cookie 过期时间的话,默认是 会话cookie(浏览器关闭时,该cookie失效,被删除) document.cookie = cname + & ...
- php cookie expires,php cookie类(设置、获取、删除cookie值)
分享一个php cookie操作的类,可以设置cookie.获取cookie.删除cookie. 代码: /** * php cookie类 * class:PHP_COOKIE * by www.j ...
- Flask 框架中 上下文基础理念,包括cookie,session存储方法,requset属性,current_app模块和g模块...
Flask中上下文,分为请求上下文和应用上下文.既状态留存 ,就是把变量存在某一个地方可以调用 请求上下文:实际就是request和session用法理念,既都是可以存储东西. 应用上下文:既变量共享 ...
最新文章
- 盛大 Everbox同步网盘,可以本地和云服务文件同步,还不错,推荐下面的注册地址...
- 学计算机须知,学习计算机须知的50个专业术语
- .net 基元类型,引用类型和值类型
- 我使用过的Linux命令之clear - 清除终端屏幕,不是cls
- 【报告分享】完美日记品牌分析报告.pdf(附68页pdf全文下载链接)
- I - Crossword Answers
- 明明是数字“1000”转换成整形时却报错---BOM 非法字符 /65279(FEFF) big endian(FEFF)和little endian(FFFE) 模式
- python excel案例导入jira_用Python脚本批量添加JIRA用户,python,jira
- IT实施计划实战经验分享:如何制定
- 微软补丁地址以及查找方式
- SpringBoot-引入jackson-dataformat-xml之后,本返回json的接口返回xml
- 《回炉重造》——Lambda表达式
- 学生宿舍管理系统c语言程序设计,学生宿舍管理系统C语言编程.doc
- SEO人员,如何保持创新思维?
- 微信公众平台订阅号和服务号的区别详解
- 计算机系统基础 第一章计算机系统概述
- 计算机三级网络技术考试容易吗,计算机三级网络技术难吗?
- https页面加载http资源的解决方法
- 快速打造一款新款爆品可以这么做
- selenium爬取评论
热门文章
- Tensorflow2.0:使用Keras自定义网络实战
- python语音开发库-各种 Python 库/模块/工具
- golang interface 类型转换_Golang面试题41道
- java 弹出另存为_java如何实现 io流传输过来的文件,提示另存为弹出窗口?
- openlayers 点线面
- okHttp3连接池简单使用
- 2013年国家计算机等级考试c语言考试真题,2013年3月计算机等级考试二级C语言真题及答案.doc...
- html 实现表格控制器,在html动态表格中将数据发布到带有ajax的控制器
- 4 读写文件_WEB安全之SQL注入(4)——读写文件
- springMVC+hibernate + layui分页