`
tudusi
  • 浏览: 1051540 次
文章分类
社区版块
存档分类
最新评论

JavaScript笔记之操作Cookie

 
阅读更多

在Web术语中,cookie是一小段信息,当用户第一次访问Web服务器时,服务器将这些信息发送给浏览器。这个用户以后每次访问这个Web站点时,Web服务器可以通过cookie识别用户。浏览器将cookie作为纯文本文件保存在计算机硬盘上。

但是关于cookie有许多常见的误解,所以一定要知道cookie不能实现哪些操作:无法获得关于用户的任何真实信息,比如他们的电子邮件地址;无法使用cookie查看用户硬盘上的内容;cookie也无法传输计算机病毒。cookie只是用户硬盘上一个简单的文本文件,可以在其中存储一些信息,仅此而已。

cookie总是包含发送它的服务器的地址。记住:cookie只识别使用的计算机,而不识别使用这台计算机的人。

cookie机制将信息存储于用户硬盘,因此可以作为全局变量,这是它最大的一个优点。它可以用于以下几种场合。

(1)保存用户登录状态。例如将用户id存储于一个cookie内,这样当用户下次访问该页面时就不需要重新登录了,现在很多论坛和社区都提供这样的功能。 cookie还可以设置过期时间,当超过时间期限后,cookie就会自动消失。因此,系统往往可以提示用户保持登录状态的时间:常见选项有一个月、三个月、一年等。

(2)跟踪用户行为。例如一个天气预报网站,能够根据用户选择的地区显示当地的天气情况。如果每次都需要选择所在地是烦琐的,当利用了 cookie后就会显得很人性化了,系统能够记住上一次访问的地区,当下次再打开该页面时,它就会自动显示上次用户所在地区的天气情况。因为一切都是在后台完成,所以这样的页面就像为某个用户所定制的一样,使用起来非常方便。

(3)定制页面。如果网站提供了换肤或更换布局的功能,那么可以使用cookie来记录用户的选项,例如:背景色、分辨率等。当用户下次访问时,仍然可以保存上一次访问的界面风格。

(4)创建购物车。正如在前面的例子中使用cookie来记录用户需要购买的商品一样,在结账的时候可以统一提交。例如淘宝网就使用cookie记录了用户曾经浏览过的商品,方便随时进行比较。

当然,上述应用仅仅是cookie能完成的部分应用,还有更多的功能需要全局变量。cookie的缺点主要集中于安全性和隐私保护。主要包括以下几种:

(1)cookie可能被禁用。当用户非常注重个人隐私保护时,他很可能禁用浏览器的cookie功能;
(2)cookie是与浏览器相关的。这意味着即使访问的是同一个页面,不同浏览器之间所保存cookie也是不能互相访问的;
(3)cookie可能被删除。因为每个cookie都是硬盘上的一个文件,因此很有可能被用户删除;
(4)
cookie安全性不够高。所有的cookie都是以纯文本的形式记录于文件中,因此如果要保存用户名密码等信息时,最好事先经过加密处理。

(一)建立一个cookie

cookie是一个具有特定格式的文本字符串。

cookieName=cookieValue; expires= expirationDateGMT; path=URLpath; domain=siteDomain

这个字符串的第一部分给cookie命名并给它赋值。这是cookie中唯一必须有的部分,字符串的其余部分是可选的。接下来是cookie的过期日期,当到了这个日期,浏览器会自动地删除这个cookie。过期日期后是一个URL路径,这允许cookie中存储一个URL。最后,可以在cookie中存储一个域值。

(二)读取cookie

设置了cookie之后,需要获得它以便做某些有意义的事情。

(三)显示cookie

编写一个脚本让它读取来自你的服务器的所有cookie,并且显示它们的名称和值。

var thisCookie = document.cookie.split("; ");获得所有cookie的值,并将这些值存储进数组thisCookie。split("; ")命令创建一个包含所有cookie的数组。

document.getElementById("cookieData").innerHTML = outMsg;在遍历所有cookie后,变量outMsg已经设置好了,所以通过innerHTML将它写到页面上。

(三)使用cookie作为计数器

下面的脚本在cookie中记录访问次数

(四)删除cookie

有时候,希望删除cookie记录中的一个或多个cookie。这非常容易,一种很好的技术是,将cookie的过期日期设置为过去的某个日期,就会让浏览器自动地删除它。

expireDate.setDate(expireDate.getDate()-1);这里创建一个新的日期对象expireDate,然后将它设置为当前日期减1,换句话说就是昨天。

(源《JavaScript基础教程》及互联网)
分享到:
评论

相关推荐

    Javascript 备忘笔记

    知识点比较全面的javascript备忘笔记,特点有: 1、知识点全面,相应案例全 2、Javascript面向对象方面做了大量的研究 3、对内置对象的知识很全面 4、DOM模型的控制事例很多 5、Cookie技术和Ajax技术 6、收集常用的...

    JavaScript学习笔记之Cookie对象

    JavaScript Cookie  Cookie对象:  Cookie是一种以文件的形式保存在客户端硬盘的Cookies文件夹中的用户数据信息(Cookie数据)。  Cookie文件由所访问的Web站点建立,以长久的保存客户端与Web站点间的会话数据,...

    JavaScript笔记.doc

    6、使用cookie: 23 7、改变状态栏文本: 23 九、将javascript和java连接起来 24 1、在javascript中调用java中的方法: 24 2、从javascript向java传递参数:通过set()方法传递参数 24 3、从java中获取返回值:通过get...

    js 逆向学习笔记之阿里系cookie.docx

    js 逆向学习笔记之阿里系cookie.docx

    js 逆向学习笔记之加速乐cookie加密.docx

    js 逆向学习笔记之加速乐cookie加密.docx

    javascript学习笔记3

    javascript 中cookie与ajax 的基础知识总结

    javascript学习笔记(七)利用javascript来创建和存储cookie

    你可以使用 JavaScript 来创建和取回 cookie 的值 2、有关cookie的例子: •名字 cookie 当访问者首次访问页面时,他或她也许会填写他/她们的名字。名字会存储于 cookie 中。当访问者再次访问网站时,他们会收到类似...

    javascript个人技术笔记

    1 Cookie对象的运用; 2 JavaScript窗口功能指南之打开一个新窗口; 3 JavaScript窗口功能指南之在窗口中书写内容; 4 利用弹出式窗口收集数据; 5 窗口对象的属性和方法; 。。。等等25个javaScript相关技术的DOC...

    JavaScript笔记

    JavaScript:定义行为和动作 (基于对象和事件驱动的客户端脚本语言;也是一种广泛应用于客户端Web开发的脚本语言) 基于对象:网页中的一切元素都是假象!不需要new,即可直接使用 事件驱动:JavaScript的执行都是...

    javascript针对cookie的基本操作实例详解

    本文实例讲述了javascript针对cookie的基本操作。分享给大家供大家参考,具体如下: js被C#、JAVA等开发者视为声名狼藉的附属编程语言是有道理的,比如说,对cookie的操作。js就没有一套类似C#的现成处理方案,而...

    JavaWeb入门学习笔记.chm

    此文档为传智播客老师JavaWeb入门视频的笔记,其中包含...3.笔记内容包括:HTML、CSS、JavaScript、XML、Java基础加强、Servlet、Request和Response、Cookie和Session、JSP、JSTL、MySQL、JDBC、ajax、综合案例网上书城

    JAVAWeb全课程笔记( html版)

    JavaScript总结 DOM总结 tomcat服务器 servlet基础 Request&Response编程 Cookie&Session XML语言 JSP技术入门 EL表达式语言 JSTL标签库: JSP标准标签库 MVC程序架构思想&案例 [总结]Path路径问题 [总结]JavaWeb...

    javaweb详细笔记,绝对详细(内含代码)

    Javascript知识点 jQuery知识点 14 Bootstrap知识点 17 JDBC & 配置文件 & 连接池 19 Xml文档及解析 31 反射 33 Http协议和Tomcat服务器 36 JavaWeb核心之Servlet 41 HttpServletResponse 46 HttpServletRequest 51...

    js学习笔记-恶意代码识别

    因为当前正在执行的Javascript存在一个机会窗口,以旧页面的权限对新加载页面的内容执行操作,如读取或设置document.cookie、任意更改表单提交的URL、注入代码或由于读写了没有完全初始化的数据结构触发内存破坏等。

    JAVA WEB 新手入门笔记

    一、 JavaScript 二、 数据库单表 三、 数据库多表 四、 事务的管理 五、 JDBC 六、 JDBC连接池 七、 DBUtils 八、 Tomcat & Http 九、 Servlet & request & response 十、 JSP & EL 十一、 Cookie & ...

    什么是cookie?js手动创建和存储cookie

    你可以使用 JavaScript 来创建和取回 cookie 的值。 有关cookie的例子: 名字 cookie 当访问者首次访问页面时,他或她也许会填写他/她们的名字。名字会存储于 cookie 中。当访问者再次访问网站时,他们会收到类似 ...

    JavaScript高级程序设计 客户端存储学习笔记

    第十九章 客户端存储 1.cookie ①最初是在客户端用于存储会话信息的。 1.1 限制 ①cookie在性质上是绑定在特定的域名下的。当设定了一个cookie后,再给创建它的域名发送请求时,都会包含这个cookie。 ②cookie的限制...

    JavaScript零基础入门(精品课)【2020新版】

    本课程为 2020年 新版录制,非常适合初学者的JavaScript视频课程,全面讲解JavaScript技术,一站式学习,让你少走弯路,直达技术前沿! 以通俗易懂的方式全面讲解JavaScript技术,以知识讲解+实战案例的方式帮您...

Global site tag (gtag.js) - Google Analytics