Cookie简介

原创 2005年05月28日 21:58:00
什么是Cookie Cookie是在Web上用于存储客户系统信息的对象。所有的信息都 以每行一个Cookie的形式存放在客户端的一个名为cookies.txt的文 件里。Cookie在HTTP头标(客户和服务器用来标识自身的分组)中在客 户机与服务器之间传输。 Cookie由某个WWW网页在某客户机上进行设置。比如,某个WWW网 页已在一个用户的计算机上设置了一个Cookie,其中存储的信息是该 用户的身份号(随机赋予该用户的唯一标识),当该用户的浏览器连接 该WWW站点时,站点要求浏览器将Cookie送回,他的身份号就通过Cooki e 传递给该网页所在的WWW服务器。服务器上的一个CGI程序查找一个 服务器端的文件以确定关于他的预设内容。 当某个服务器在客户的计算机上设置Cookie后,请注意如果要让C ookie信息确实写入文件,必须关闭浏览器。在浏览器未关闭之前,任 何新的或变化的Cookie都存放在内存中。 二、Cookie的特性 每个Cookie包含有6个元素,常用的有:name、value、expires、d omain和secure。这些元素存放了这个Cookie的作用范围及实际的数 据。 1.name 这是每一个Cookie必须有的元素,它是该Cookie的名字 。name元素是一个不含分号、逗号和空格的字符串。其命名方式与变 量命名相同。 2.value value也是每个Cookie必须有的元素,它是该Cookie的 值。value元素是实际存放于Cookie中的信息。它是由任何字符构成 的字符串。 3.expires expires是一个Cookie的过期时间。没有设置expire s元素的Cookie在用户断开连接后过期,但在用户关闭浏览器之前Cook ie依然存在。 Cookie有一个过期时间并等于它会从Cookie.txt文件中被删除。 在它的位置被用来存放另一个Cookie前,它依然存在着。过期的Cooki e只是不被送往要求使用它的服务器。 expire是一个串,它的形式如下: Wdy, DD-Mon-YY HH:MM:SS GMT expires元素是可选的。 4.domain domain是设置某个Cookie的Web网页所在的计算机的 域名。这样,由一个站点创建的Cookie不会影响到另一个站点上的程 序。对于较高层的域名如.com, .edu,或.mil,域名中至少有两个分隔 符(.)。而对于较低层的域名如.cn, .uk或.ca,域名中至少有3个分隔 符。demain元素自动地被设为网页所在站点的基本域名。比如,你的 网页位于http://www.dscga.com/~user,则该网页创建的Cookie缺 省地对域dscga.com有效。如果你希望你的Cookie 只应用于服务器ww w3.dscya.com,那么你必须在设置Cookie的时候指定。 只有拥有域名的站点才能为那个域名设置Cookie 5.path 一个Cookie可以被指定为只针对一个站点的某一层次。 如果一个Web站点要区分已注册的和未注册的客户,就可以为已经注册 的客户设置Cookie,当注册过的客户访问该站点时,他就可以访问到只 对注册客户有效的页面。 path是可选项,如果没有指定path,将被缺省地设置为设置Cookie 的页面的路径。 6.secure标志 secure是一个布尔值(真或假)。它的缺省值为假 。如果它被设为真值, 这个Cookie只被浏览器认为是安全的服务器所 记住。 三、关于Cookie的一些限制 一个站点能为一个单独的客户最多设置20个Cookie。如果一个站 点有两个服务器(如ww w.dscga.com和www3.dscga.com)但没有指定域 名,Cookie的域名缺省地是dscga.com。如果指定了确切的服务器地址 ,则每个站点可以设置20个Cookie--而不是总共20个。不仅每个服务 器能设置的Cookie数目是有限的,而且每个客户机最多只能存储300个 Cookie。如果一个客户机已有300个Cookie,并且一个站点在它上面又 设置了一个新Cookie,那么,先前存在的某一个Cookie将被删除。 每个Cookie也有自身的限制。Cookie不得超过4KB(4096bytes), 其中包括名字和其他信息。 四、javascript和Cookie 现在大家已经了解有关Cookie的一些基本概念了,让我们更进一 步讨论Cookie。可以用javascript来很方便地编写函数用来创建、读 取和删除Cookie。下面,我们就介绍这些函数 1.创建Cookie 我们要进行的第一件事就是要创建一个Cookie。下面给出的SctC ookie()函数将完成这一功能。 function SetCookit (name, value) { var argv=SetCookie.arguments; var argc=SetCookie.arguments.length; var expires=(argc>2)?argv[2]: null; var path=(argc>3)? argv[3]: null; var domain=(argc>4)? argv[4]: null; var secure=(argc>5)? argv[5]: false; documents.cookie=name+"="+escape (value)+ ((expires==null)?"":(";expires=" +expires.toGMTString()))+ ((path==null)?"":(";path="+path))+ ((domain==null)?"":(";domain="+ domain))+ ((secure==true)?";secure":""); } SetCookie()只要求传递被设置的Cookie的名字和值,但如果必要 的话你可以设置其他4 个参数而不必改变这个函数。可选的参数必须 用正确的次序使用。如果不想设置某个参数, 必须设置一个空串。比 如,如果我们创建的一个Cookie需要指定secure域,但不想设置expir es, patb或domain,就可以像这样调用SetCokie(): SetCookie("MyN ewCookie","Myvalue" ,"",","tyue); 2.读取Cookie 下面给出的函数GetCookie()用来读取一个Cookie。当一个Cooki e的请求被客户机收到时,该客户机查找它的cookies.txt文件以进行 匹配。这个函数首先匹配这个Cookie的名字。如果有多个同名的Cook ie,它再匹配路径。函数完成匹配后返回这个Cookie的值。如果客户 机中没有这个Cookie,或者路径不匹配,该函数返回一个NULL。 function GetCookie(name) { var arg=name+ "="; var alen=arg.length; var clen=documents.cookie.length; var i=0; while (i

plupload 上传组件

plupload简介 Plupload是有TinyMCE的开发者开发的,为您的内容管理系统或是类似上传程序提供一个高度可用的上传插件。Plupload 目前分为一个核心API 和一个jQuery...
  • u010808961
  • u010808961
  • 2014年05月22日 18:27
  • 1904

Cookie简介和作用

Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie。内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的。硬盘Cookie...
  • elsery
  • elsery
  • 2015年05月08日 22:31
  • 759

利用arpspoof进行cookie会话劫持

利用arpspoof进行cookie会话劫持 1.开启IP转发 root@kali-PC:~# echo 1 > /proc/sys/net/ipv4/ip_forward ...
  • paul123456789io
  • paul123456789io
  • 2017年03月29日 10:32
  • 632

基于Cookie的攻击和防范学习总结

实现基于HTTP Cookie攻击的前提是目标系统在Cookie中保存了用户ID,凭证,状态等其他可以用来进行攻击的信息。通常的攻击方式有三种:1. 直接访问Cookie文件查找想要的机密信息2. 在...
  • jinhuiyu
  • jinhuiyu
  • 2010年01月07日 15:21
  • 7765

Java Web程序 Cookie 登陆验证

1、一个简单的登陆界面,源代码如下: Insert title here 用户登陆 用户名: 密 码:...
  • Hufan11100914
  • Hufan11100914
  • 2014年09月25日 09:22
  • 2416

cookie简介

什么是cookie cookie是
  • huangyuan_xuan
  • huangyuan_xuan
  • 2014年07月12日 18:53
  • 426

cookie 简介

背景 在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cookie规范定义了服务器和客户端交互信息的格式、生存期、使用范围、安全性。  ...
  • JackieLiuLixi
  • JackieLiuLixi
  • 2014年07月17日 14:40
  • 599

Cookie简介

Cookie简介 Cookie的引文原意是“点心”,它是在客户端访问Web服务器时,服务器在客户端硬盘上存放的信息,好像是服务器发送给客户的“点心”。服务器可以根据Cookie来跟踪客户状态,...
  • tanqian351
  • tanqian351
  • 2016年04月21日 16:21
  • 371

cookie和session简介

http请求报文格式: 请求行:方法 路径 http版本,e.g:GET /images/logo.png HTTP/1.1 请求头部:Accept-Language等 空行 可选消息主体 注:请求...
  • gaochaolei
  • gaochaolei
  • 2017年04月21日 15:29
  • 247

PHP进阶:cookie简介

Cookie是存储在客户端浏览器中的数据,我们通过Cookie来跟踪与存储用户数据。一般情况下,Cookie通过HTTP headers从服务端返回到客户端。多数web程序都支持Cookie的操作,因...
  • patkritLee
  • patkritLee
  • 2016年03月21日 10:57
  • 259
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Cookie简介
举报原因:
原因补充:

(最多只允许输入30个字)