首页 >web前端 >js教程 >cookie的用法详细讲解

cookie的用法详细讲解

韦小宝
韦小宝原创
2018-03-12 10:36:266617浏览

我们在浏览器中,经常涉及到数据的交换,比如你登录邮箱,登录一个页面。我们经常会在此时设置30天内记住我,或者自动登录选项。那么它们是怎么记录信息的呢,答案就是今天的主角cookie了,Cookie是由HTTP服务器设置的,保存在浏览器中,但HTTP协议是一种无状态协议,在数据交换完毕后,服务器端和客户端的链接就会关闭,每次交换数据都需要建立新的链接。

一、什么叫cookie?

你进入某个网站,需要登录密码和帐号。你初次注册之后,登录,进入网站主页面。这时你的计算机就会自动保存一个cookie信息(该信息可以通过火狐浏览器查看,chrom不具备这项功能),该信息中包含你初次登录的账号和密码,当你下一次再登录这个网站时浏览器会自动取出计算机中相关的cookie信息,这样就不会出现登录页面而是直接跳转到网站主页。

新浪微博为例
1、下面显示查看cookie信息的操作
   ###打开火狐浏览器,右键

查看页面信息.jpg
选择“查看页面信息”

选择安全.jpg
选择安全选项,点击“查看cookie”

QQ截图20160722104845.jpg
上图显示的一系列的文件夹,包含着一系列的进入各个网站的相关信息。
1.jpg
点开文件夹,你就会发现如上图所示的信息,每一条信息都是一条cookie,他们都具有名称、内容以及过期时间。这里着重强调一下,过期时间是指一旦到达这个时间点,该条cookie信息就会自动消失。

2、以“新浪微博”为例来观察cookie信息的建立与消失
首先我点击新浪“全部移除”(此功能在上图中的最底部),消除所有的cookie信息。然后进入新浪微博页面。
2.jpg
此时显示未登录状态。再次清除所有cookie信息(登录网站就会出现这些无关重要的cookie信息),避免对后面的演示造成影响。
登陆后,页面如下:

3.jpg
如果我们推出在进入这个页面,你会发现不需要在登录,你会直接进入到如图三所示的界面。可是如果你再次去除所有的cookie,再次登录这个界面就会出现如图2所示的页面。

相比到这里大家已经初步理解了cookie的用法。

二、cookie的程序编写

1、设置cookie

4.jpg
效果如下图:

5.jpg

查看cookie(第一个文件夹装载这几条cookie信息)

6.jpg
注意名称与内容。”a=hello”等号前面表示名称,等号后面表示内容。
**通过上面这种方式创建的cookie比较繁琐,如果多写几条就会显得麻烦。我们可以通过函数的方式创建cookie。

7.jpg

2、获取cookie

cookie既然已经创建,那么我们登录页面的时候,浏览器会通过什么样的程序来获取计算机中任意一条cookie信息。
我们现在通过 alert(document.cookie);看到的效果如下图:
8.jpg
是一条长长的字符串。我们现在要做的是获取其中单条cookie信息,并且输出等号后面的值。做法如下:

9.jpg
输出结果如下:
10.jpg
11.jpg
**为什么alert(getCookie(“眼睛”));alert(getCookie(“头发”));这两条代码运行的时候为什么显示为空?

12.jpg
为什么要加一个空格?

13.jpg
如上图所示,通过split()分割字符串时要这样写:split(“; “);

3.移除cookie

只要将cookie的过期时间设置为负值,cookie就会直接消失。

14.jpg

15.jpg

三、全部代码如下:

16.jpg

17.jpg

就上面的cookie来说吧,要想掌握cookie,就必须懂它的来源,是什么,它存在的意义是就是为了保存用户的信息,然后知道是怎么保存的,保存的形式知道了,就可以运用我们学到的js基础知识语法来操作它改变它,使之变为我们需要的样子,懂了需求之后,归根到底还是考察js的基础操作,字符串的操作,正则表达式的应用等等。

更多关于cookie文章:

怎样操作纯JS操作Cookie

AngularJs操作Cookies实例分享

php会话控制session、cookie介绍

以上是cookie的用法详细讲解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn