`

web程序客户端存储数据的常用方法

阅读更多

客户端存储

 

web开发中,说到客户端数据存储,可能第一时间想到的是cookies,这是一种web开发常见的客户端存储数据的方法。它的最大优点是兼容性好,几乎所有浏览器都具有这个功能。缺点是存储量太小(4k)、数据访问不够灵活。随着Ajax的兴起和离线应用需求的增加,对本地数据存储的需求已经不是cookie可以满足的了。

ie5+firefox2+web开发中,除了通用的cookie,本地存储数据还可以通过userDatasessionStorage在客户端进行存储数据。

userData的存储机制:将要保存的数据以“健值对(健作为属性,值为属性的值)”的形式保存在XML文档中。userData行为提供了一个比Cookie更具有动态性和更大容量的数据结构。每页的UserData存储区数据大小可以达到64 Kb,每个域名可以达到640 Kb

userData行为通过sessions为每个对象分配UserData存储区。使用saveload方法将UserData存储区数据保存在缓存(cache)中。一旦UserData存储区保存以后,即使IE浏览器关闭或者刷新了,下一次进入该页面,数据也能够重新载入而不会丢失,除非你人为删除或者用脚本设置了该数据的失效期。

 

1userData使用前必须在行内或者文档的HEAD部分宣告如下样式:

<STYLE>
      .userData {behavior:url(#default#userdata);}

 </STYLE>

或者使用脚本绑定:
object.style.behavior = "url('#default#userData')"
object.addBehavior ("#default#userData")

 

2、成员

expires
  
设置或取得使用userData行为保存数据的失效日期。

    
脚本语法:对象ID.expires = 参数
    
参数是一个使用UTCUniversal Time Coordinate,世界调整时间)格式表示失效日期的字符串。该属性可以读写,没有默认值。浏览器会对比这个日期和当前日期,如果到期,该数据就自动失效。

getAttribute(key)
  
取得指定的属性值。

load(
存储区名)
  
UserData存储区载入存储的对象数据。


removeAttribute(key)
  
从对象中删除指定的属性值。

save(
存储区名)
  
将对象数据存入一个UserData存储区。


setAttribute(key, value)
  
设置指定的属性值。

XMLDocument
  
取得存储该对象数据的XML DOM引用。

 

例:

o.setAttribute("code", "hello world!");
o.save("baidu");

实际上就是一个XML文件,通过文件名->属性的方式保存字符串。

执行后,UserData文件夹中会生成一个baidu[1].xml文件,其中的内容是:
<ROOTSTUB code="hello,world!"/>

在一个文件中可以有多个属性,也就是可以存储多种不同的数据。

 

3firefox 2+中的seessionStorage

firefox 2.0开始,开始支持HTML5,同时也就支持了sessionStorage,这是一个只能在session生命周期内使用的对象,最大的用途在于用于保存一些临时的数据防止用户意外刷新页面,同时,在浏览器意外关闭并恢复页面时,sessionStrorage中存储的信息也会被同时恢复。Firefox默认允许一个域名存储5120KB的数据。

 

sessionStorage中的方法:

getItem(key)  取得指定的属性值。

setItem(key) 设置指定的属性值。

removeAttribute(key)  从对象中删除指定的属性值。

分享到:
评论

相关推荐

    微信小程序cms系统 包括Java后台 小程序客户端.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    微信小程序登录模块,包含小程序客户端和后台API服务器.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    ASP.Net.Web程序设计

    《WEB程序设计》复习答疑 1、当前主要的WEB数据库访问技术有哪些? 答:到目前为止,WEB数据库访问技术主要分为两大类: (1)公共网关接口技术(CGI); CGI是WEB服务器运行时外部程序的规范,按照CGI编写的程序...

    小团队知识管理的Android移动客户端服务程序.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    7.5.6 应用存储过程进行数据操作 7.6 实战检验 7.6.1 JDBC连接SQLServer2005数据库 76.2 网站用户注册 7.7 疑难解惑 7.7.1 Prepared Statement与Statement 7.7.2 预编译的理解 7.8 精彩回顾 第8章 浅尝辄止 ——...

    Web安全培训ppt(适合初学者)

    Web安全学习大纲 一、Web安全系列之基础 1、Web安全基础概念(1天) 互联网本来是安全的,自从有了研究安全的人之后,互联网就变的不安全了。 2、web面临的主要安全问题(2天) 客户端:移动APP漏洞、浏览器...

    客户端爬虫安卓端demo.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    樱花动漫 爬虫解析 安卓客户端.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    Scrapy糗事百科爬虫及Java版客户端.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    客户端统一验证JavaScript函数库及示例源码

    同时设置返回值,最终成功阻止事件的继续往后执行,当在客户端触发一要回发的按钮事件是,想在程序里结束让其继续执行时,以往则不是很好处理,如Enter键,这里此方法则大显用武之地。 附有ChkInputs.js完整的源...

    猫影视TV客户端爬虫自定义接口工程.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    asp.net教学讲义

    1.2.2 ASP.NET应用程序的创建方法 9 1.2.3 Web窗体的特点 10 1.2.4 Web 窗体的功能 10 1.2.5 WEB窗体工作原理 11 1.3 ASP.NET 页的结构 12 1.3.1 @Page指令 13 1.3.2 ASP.NET的服务器端脚本 14 1.3.3 服务器端脚本...

    小说爬虫工具(zeus 客户端项目演示).zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    超强的Web在线矢量绘图器与监控系统源码——基于visual graph

    完全的客户端控件,不增加服务器压力,一切功能均在客户端实现,无需服务器进行实时的数据计算,如果需要服务器的交互,VG也提供相应的接口与方法来在客户端与服务器端进行轻量级XML交互数据。 基于Visual Graph...

    基于IjkPlayer的仿Bilibili Android客户端,直播及点播视频源来自于网络爬虫.zip

    爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...

    ASP.NET应用开发案例教程

    8.3.4 其他几种客户端的用户状态管理方法 8.3.5 本小节提示 8.4 ASP.NETHTFP运行情况 8.4.1 HTFP运行情况介绍 8.4.2 HTFP处理程序 8.5 小结 8.6 习题 第9章 ASP.NET与XML 9.1 XML简介 9.1.1...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    SSH 为 Struts+Spring+Hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久...

    ASP.NET3.5从入门到精通

    13.3.5 检索应用程序数据缓存对象 13.4 小结 第 14 章 ASP.NET XML 和Web Service 14.1 XML 简介 14.2 读写XML 14.2.1 XML 与HTML 14.2.2 创建XML 文档 14.2.3 XML 控件 14.2.4 XML 文件读取类(XmlTextReader) ...

Global site tag (gtag.js) - Google Analytics