`
baobeituping
  • 浏览: 1071176 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

JSCOOKIE参数详细介绍

阅读更多

在Javascript脚本里,一个cookie 实际就是一个字符串属性。当你读取cookie的值时,就得到一个字符串,里面当前WEB页使用的所有cookies的名称和值。每个cookie除了 name名称和value值这两个属性以外,还有四个属性。这些属性是: expires过期时间、 path路径、 domain域、以及 secure安全。

Expires – 过期时间。指定cookie的生命期。具体是值是过期日期。如果想让cookie的存在期限超过当前浏览器会话时间,就必须使用这个属性。当过了到期日期时,浏览器就可以删除cookie文件,没有任何影响。

Path – 路径。指定与cookie关联的WEB页。值可以是一个目录,或者是一个路径。如果http://www.zdnet.com/devhead /index.html 建立了一个cookie,那么在http://www.zdnet.com/devhead/目录里的所有页面,以及该目录下面任何子目录里的页面都可以访问这个cookie。这就是说,在http://www.zdnet.com/devhead/stories/articles 里的任何页面都可以访问http://www.zdnet.com/devhead/index.html建立的cookie。但是,如果http: //www.zdnet.com/zdnn/ 需要访问http://www.zdnet.com/devhead/index.html设置的cookes,该怎么办?这时,我们要把cookies 的path属性设置成“/”。在指定路径的时候,凡是来自同一服务器,URL里有相同路径的所有WEB页面都可以共享cookies。现在看另一个例子:如果想让 http://www.zdnet.com/devhead/filters/ 和http://www.zdnet.com/devhead/stories/共享cookies,就要把path设成“/devhead”。

Domain – 域。指定关联的WEB服务器或域。值是域名,比如zdnet.com。这是对path路径属性的一个延伸。如果我们想让 catalog.mycompany.com 能够访问shoppingcart.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也加密,得自己加密数据。

操纵Cookies

请记住,cookie 就是文档的一个字符串属性。要保存cookie,只要建立一个字符串,格式是name=<value>(名称=值),然后把文档的 document.cookie 设置成与它相等即可。比如,假设想保存表单接收到的用户名,那么代码看起来就象这样:

document.cookie = "username" + escape(form.username.value); 在这里,使用 escape() 函数非常重要,因为cookie值里可能包含分号、逗号或者空格。这就是说,在读取cookie值时,必须使用对应的unescape()函数给值解码。

我们当然还得介绍cookie的四个属性。这些属性用下面的格式加到字符串值后面:

name=<value>[; expires=<date>][; domain=<domain>][; path=<path>][; secure]

名称=<值>[; expires=<日期>][; domain=<域>][; path=<路径>][; 安全]


<value>,
的.toGMTString() 方法得到这一GMT格式的日期值。方括号代表这项是可选的。比如在 [; secure]两边的方括号代表要想把cookie设置成安全的,就需要把"; secure" 加到cookie字符串值的后面。如果"; secure" 没有加到cookie字符串后面,那么这个cookie就是不安全的。不要把尖括号<> 和方括号[] 加到cookie里(除非它们是某些值的内容)。设置属性时,不限属性,可以用任何顺序设置。

下面是一个例子,在这个例子里,cookie "username" 被设置成在15分钟之后过期,可以被服务器上的所有目录访问,可以被"mydomain.com"域里的所有服务器访问,安全状态为安全。

// Date() 的构造器设置以毫秒为单位
// .getTime() 方法返回时间,单位为毫秒
// 所以要设置15分钟到期,要用60000毫秒乘15分钟
var expiration = new Date((new Date()).getTime() + 15 * 60000);
document.cookie = "username=" + escape(form.username.value)+ "; expires ="
+ expiration.toGMTString() + "; path=" + "/" + "; _
domain=" + "mydomain.com" + "; secure"; 读取cookies值有点象个小把戏,因为你一次就得到了属于当前文档的所有cookies。

// 下面这个语句读取了属于当前文档的所有cookies
var allcookies = document.cookie; 现在,我们得解析allcookies变量里的不同cookies,找到感兴趣的指定cookie。这个工作很简单,因为我们可以利用Javascript语言提供的扩展字符串支持。

如果我们对前面分配的cookie "username" 感兴趣,可以用下面的脚本来读取它的值。

// 我们定义一个函数,用来读取特定的cookie值。
function getCookie(cookie_name)
{
var allcookies = document.cookie;
var cookie_pos = allcookies.indexOf(cookie_name);

  // 如果找到了索引,就代表cookie存在,
// 反之,就说明不存在。
if (cookie_pos != -1)
{
  // 把cookie_pos放在值的开始,只要给值加1即可。
  cookie_pos += cookie_name.length + 1;
  var cookie_end = allcookies.indexOf(";", cookie_pos);

  if (cookie_end == -1)
  {
   cookie_end = allcookies.length;
  }

  var value = unescape(allcookies.substring(cookie_pos, cookie_end));
}

return value;
}

// 调用函数
var cookie_val = getCookie("username");上面例程里的 cookie_val 变量可以用来生成动态内容,或者发送给服务器端CGI脚本进行处理。现在你知道了使用Javascript脚本操纵cookies的基本方法。但是,如果你跟我一样,那么我们要做的第一件事,就是建立一些接口函数,把cookies处理上的麻烦隐藏起来。不过,在你开始编程之前,稍候片刻。这些工作,早就有人替你做好了。你要做的,只是到哪去找这些接口函数而已。

分享到:
评论

相关推荐

    js cookie 实例

    本文将详细介绍如何利用JavaScript来实现Cookie的基本操作,包括创建、读取、删除等功能,并给出具体的代码示例。 #### 二、Cookie 基础概念 Cookie是由服务器发送到客户端的一段文本信息,客户端将其保存在本地,...

    js文件传递参数及js文件的源码

    在本文中,我们将详细介绍如何在 JS 文件中传递参数,以及如何在 JS 文件中访问这些参数。 参数传递的重要性 在 Web 开发中,参数传递是一个非常重要的概念。它允许我们在不同的页面之间传递数据,实现数据的共享...

    js操作cookie(增删改查)

    这篇博客“js操作cookie(增删改查)”可能详细讲解了如何使用JavaScript进行Cookie的添加、删除、修改和查询操作。虽然没有提供具体的内容,但我可以为你提供一个通用的教程来介绍这些基本概念。 1. **添加Cookie*...

    JS读取COOKIE.txt

    本文将详细介绍如何利用JavaScript来读取浏览器中的Cookie。 #### 二、基础知识 ##### 2.1 Cookie简介 Cookie是网站服务器存储在客户端(通常是浏览器)上的小段文本数据,用来记录用户的一些信息。每当你访问网站...

    node.js cookie-parser 中间件介绍

    根据提供的文件内容,我们可以逐步详细地分析cookie-parser中间件: 首先,cookie-parser中间件的核心功能是提供了一个用于解析cookie的方法。它依赖于两个主要的组件:cookie模块和cookie-parser模块本身。cookie...

    用js写的cookie

    下面详细介绍如何使用JavaScript来创建、读取和删除Cookie。 #### 三、创建Cookie 创建一个Cookie可以通过直接给`document.cookie`赋值的方式完成。其基本格式如下: ```javascript document.cookie = '...

    jQuery.cookie.js使用方法及相关参数解释

    本文将详细介绍其使用方法以及相关的参数设置,并对每一个参数进行详尽的解释,帮助用户更好地掌握如何在Web开发中利用这个插件来管理cookie。 首先,要使用jQuery.cookie.js插件,需要确保已经正确引入了jQuery的...

    cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击.zip_js设置cookie值

    本文将详细介绍HttpOnly属性的作用,以及Java和PHP后台如何设置HttpOnly属性到浏览器的Cookie。 **HttpOnly属性详解** HttpOnly属性是Cookie的一个扩展,其主要目的是增强对XSS攻击的防护。当一个Cookie被设置为...

    用JS设置、读取、删除cookie

    本文将详细介绍如何使用JavaScript来设置、读取和删除Cookie。 #### Cookie简介 Cookie是由服务器发送到客户端的一小段文本信息,并且保存在用户的计算机上,通过浏览器再发送回服务器。它主要用于跟踪用户的会话...

    最新jquey.cookie.js

    下面将详细介绍这个插件的使用方法及其核心知识点。 ### 1. 插件安装 首先,你需要在项目中引入 jQuery 和 `jquery.cookie.js` 文件。确保 jQuery 在 `jquery.cookie.js` 之前加载,因为这个插件依赖于 jQuery。你...

    js文件Cookie存取值示例代码

    以下为详细介绍。 1. Cookie存储(Set Cookie): 当向Cookie中存入数据时,需要指定cookie的名称(name)和值(value),同时还可以设定过期时间(expires)以及存储路径(path)、域(domain)和是否安全传输...

    jquery.cookies.2.2.0.js.zip

    本文将详细介绍jQuery的Cookies插件——jquery.cookies.2.2.0.js,以及如何在实际项目中使用它。 一、jQuery Cookies插件简介 jquery.cookies.2.2.0.js是由Karsten Dambekalns开发的一个jQuery插件,它为jQuery...

    jquery 设置cookie、删除cookie、获取cookie

    jQuery 提供了一个非常方便的方式来处理这些操作,本文将详细介绍如何利用 jQuery 和其插件来设置、获取及删除 Cookie。 #### 二、环境搭建 首先,确保您的项目环境中已经包含了 jQuery 库。可以使用 CDN 方式引入...

    jquery-cookie(Jq取cookie必备).rar

    本文将详细介绍jQuery Cookie的使用方法及其在实际项目中的应用。 首先,我们来理解Cookie的基本概念。Cookie是由服务器发送到用户的浏览器并由浏览器保存的一小块数据,它可以包含文本信息,如用户名、会话ID等。...

    中国裁判文书网1

    本文档详细介绍了中国裁判文书网爬虫技术的实现过程,包括反反爬流程、爬虫技术、POST请求参数计算、Cookie参数获取、JSON数据解析、详情页URL获取等知识点。 一、反反爬流程 反反爬流程是指在爬虫技术中,如何...

    JQuery对cookie操作

    本文将详细介绍如何使用jQuery进行Cookie的创建、读取、删除以及存在性判断。 ### 1. jQuery.cookie插件 在jQuery中处理Cookie,通常需要使用一个名为`jQuery.cookie`的插件。首先确保已引入该插件,通常通过CDN...

    jquerycookie实例

    下面我们将详细介绍如何使用这个插件进行Cookie的创建、读取和删除。 **创建Cookie** 创建Cookie通常涉及设置名称、值、过期时间和域。以下是一个创建Cookie的jQuery示例: ```javascript $.cookie('the_cookie',...

    js使用cookie记录用户名的方法

    本文将详细介绍如何使用JavaScript操作Cookie来记录用户名。 首先,理解Cookie的基本原理。Cookie由服务器端设置,并发送到客户端(浏览器),客户端在后续的请求中会自动携带这些Cookie回服务器。每个Cookie都有一...

    JS实现Cookie读、写、删除操作工具类示例

    本文将详细介绍如何使用JavaScript实现Cookie的读、写、删除操作,以及一个完整的工具类示例。 1. **读取Cookie** 读取Cookie的核心在于解析`document.cookie`字符串,该字符串包含了所有已设置的Cookie。`...

    jQuery.cookie.js插件实现换肤功能.docx

    本文将详细介绍如何利用jQuery.cookie.js插件实现网站换肤功能。 #### 二、jQuery.cookie.js 插件简介 jQuery.cookie.js 是一个轻量级的jQuery插件,它简化了在客户端存储和获取cookie的操作。该插件提供了简洁易用...

Global site tag (gtag.js) - Google Analytics