离线应用与客户端存储.doc_第1页
离线应用与客户端存储.doc_第2页
离线应用与客户端存储.doc_第3页
离线应用与客户端存储.doc_第4页
离线应用与客户端存储.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第23章,离线应用与客户端存储目录核心代码:1Cookie介绍6Cookie构成6核心代码:/*对象名:cookie对象*/var CookieUtil = /* *方法名:读取 *参数:namestring,cookie的名称 *返回值:cookie的valuestring */ get: function (name) /提示:使用name需要经过 encodeURIComponent()进行编码转换转换 var cookieName = encodeURIComponent(name) + =, cookieStart = document.cookie.indexOf(cookieName), cookieValue = null; if (cookieStart -1) var cookieEnd = document.cookie.indexOf(;, cookieStart); if (cookieEnd = -1) cookieEnd = document.cookie.length; cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd) return cookieValue; , /* *方法名:写入 *参数:namestring,名称。 *参数:valuestring,值。 *参数:expiresDate,失效时间,例如: new Date(October 2,2014);在使用的时候需要转换成GMT时间,expires.toGMTString(); *参数:pathstring,路径,例如: /books/projs *参数:domainstring,域,例如: *参数:securebool,安全标志,true 或者 false *提示:1、调用案例:CookieUtil.set(name, xxx, new Date(October 18,2014),null,null,true); */ set: function (name, value, expires, path, domain, secure) /提示:name 和 value 需要经过encodeURIComponent()进行编码转换转换 var cookieText = encodeURIComponent(name) + = + encodeURIComponent(value); if (expires instanceof (Date) cookieText += ;expires= + expires.toGMTString(); if (path) cookieText += ;path= + path; if (domain) cookieText += ;domain= + domain; if (secure) cookieText += ;secure; document.cookie = cookieText; , /* *方法名:删除 *参数:namestring,名称 *参数:valuestring,值 *参数:expiresDate,失效时间,例如: new Date(October 2,2014) *参数:pathstring,路径,例如: /books/projs *参数:domainstring,域,例如: *参数:securebool,安全标志,true 或者 false */ unset: function (name, path, domain, secure) this.set(name, , new Date(0), path, domain, secure); var SubCookieUtil = /* *方法名:读取单个子cookie值 *参数:namestring,父cookie名称 *参数:subNamestring,子cookie名称 *返回值:指定名称的子cookie的值string */ get: function (name, subName) var subCookies = this.getAll(name); if (subCookies) return subCookiessubName; else return null; , /* *方法名:读取所有的子cookie, *参数:namestring,父cookie名称 *返回值:数组,键值对,名称和值; */ getAll: function (name) var cookieName = encodeURIComponent(name) + =, cookieStart = document.cookie.indexOf(cookieName), cookieValue = null, cookieEnd, subCookies, parts, result = ; cookieValue = (CookieUtil.get(name);/先获取父cookie的值 cookieValue = cookieValue = null ? : cookieValue; if (cookieValue.length 0) subCookies = cookieValue.split(&); for (var i = 0; i 0 & subcookies.hasOwnProperty(subName) subcookieParts.push(encodeURIComponent(subName) + = + encodeURIComponent(subcookiessubName); if (subcookieParts.length 0) cookieText += subcookieParts.join(&); if (expires instanceof Date) cookieText += ;expires= + expires.toGMTString(); if (path) cookieText += ;path= + path; if (domain) cookieText += ;domain= + domain; if (secure) cookieText += ;secure= + secure; else cookieText += ; expires= + (new Date(0).toGMTString(); document.cookie = cookieText; , /* *方法名:删除单个子cookie *参数:namestring,父cookie名称 *参数:subNamestring,子cookie名称 *参数:pathstring,路径 *参数:domainstring,域 *参数:securestring,安全标志 */ unset: function (name,subName,path,domain,secure) var subcookies = this.getAll(name); if (subcookies) delete subcookiessubName; this.setAll(name, subcookies, null, path, domain, secure); , /* *方法名:删除整个cookie *参数:namestring,父cookie名称 *参数:pathstring,路径 *参数:domainstring,域 *参数:securestring,安全标志 */ unsetAll: function (name,path,domain,secure) this.setAll(name,null,new Date(0),path,domain,secure); ;Cookie介绍cookie在性质上是绑定在特定的域名下的。设置了一个cookie后,再给创建它的域名发送请求时,都会包含这个cookie,其他域无法访问。 cookie是存在客户端计算机上的,同时不会占据太多的磁盘空间。每个域的cookie总数是有限的,不同浏览器之间各有不同,如下所示: 1.IE6-限制每个域名最多20个cookie; 2.IE7+,每个域名最多50个 3.Firefox,每个域最多50多个 4.Opera,最多30个 5.Safari和Chrome对于每个域的cookie数量没有强制性规定 当超过单个域名限制之后, 浏览器就会清除以前设置的cookie,IE和Opera清除最近最少使用的cookie,Firefox随机清除,考虑cookie限制非常重要,以免出现不可预期的结果。 Cookie构成1、名称 特点:唯一,不区分大小写【建议,实践中最好将cookie名称看作区分大小写】,必须经过URL编码 2、值 特点:必须被URL编码 3、域 cookie对哪个域有效,所有向该域发送的请求中都会包含这个cookie信息。比如 包含cookie,那么所有的子域都包含cookie;反之不行。 4、失效时间 是GMT格式的日期(Wdy,DD-Mon-YYYY HH:MM:SS GMT) 调用:Coo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论