cookie,在我第一次知道这个东西的时候,以为是饼干,但是当时是在手机浏览器中看见有一个关闭cookie的选项,然后当时百度了一下依稀记得它是一个存储信息的东西。直到现在我认真学习有关方面的东西的时候,终于了解了它是一个什么东西。以及它是用来干什么的。
一、cookie是什么?
Cookie(复数形态Cookies),中文名称为“小型文本文件”或“小甜饼”,指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。定义于RFC2109。是网景公司的前雇员卢·蒙特利(英语:Lou Montulli)(Lou Montulli)在1993年3月的发明。(当然摘自网络了)
二、在js中cookie的含义。
在js中,cookie是一个变量,这个变量放在使用者的计算机硬盘当中。js可以创建cookie并且也可以取回cookie。当同一台计算机浏览某个网页时,就会发送cookie。(cookie是针对浏览器的)。举一个例子很好说明cookie,当某个用户在使用网站时创建了一个用户名和密码时,如果他开启了cookie那么当他在下次访问这个网站的时候就可以调用cookie,而不用再次输入账号和密码啦。从而为用户节省了时间,简化了操作。cookie其实是一个对象的属性,这个对象是:document。而document是HTML中的一个对象,在这里不过多说明。
三、怎么创建cookie。
创建cookie很简单比如:
document.cookie = "名字:晨风";
但是此时应该注意,这个cookie只是短暂存在于浏览器中的,一旦关闭浏览器则cookie就失效了,cookie的查看在每个浏览器中对应的位置不同,在Google的浏览器中,cookie在地址栏的前面的感叹号之中。平时所用到的cookie的过期时间很长,那么如何能办到长久的使cookie有效呢?下面就完整的说明在创建cookie字符串的时候需要注意的部分:
name(名称)、value(值)、expires(过期时间)、path(路径)、domain(域)、和secure(安全性)。
1、名称和值
cookie字符串的第一部分包括名称和值,名称是用来引用cookie的,而值是用来表达cookie的信息部分。第一部分为必选的部分,就如同不以结婚为目的的谈恋爱是耍流氓一样,不存储名称和值的cookie是数流氓的行径,因为保存信息是cookie的目的所在,必须确保cookie的名称和值在cookie字符串的开头部分。
2、过期时间
document.cookie = '名字 = 晨风;expires = Tue, 01 Dec 2020 00:00:00 GMT;'
如果希望cookie存在的时间比较长,那么就涉及到了cookie的第二部分,也是就是expires,过期时间,在上述代码中,cookie的过期时间是2020年12月1号。这里需要注意的是:格式,过期时间的格式十分重要,与toGMTString()方法给出的cookie的格式相同。当然也可以用Date对象来获取当前的日期和时间,然后将cookie设置成该日期后的3或6个月过期,这样就不用一直更改时间了。(比如2020年过后还得再改代码,岂不是很不好?)
var exprieDate = new Date();
expireDate.setMonth(expireDate.getMonth() + 6);
document.cookie = '名字 = 晨风;expires = '+expireDate.toGMTString()+';';
这个代码就是在当前日期后的6个月过期。当然如果用户提前把cookie删除的话那也是没有办法的。
3.路径
在一般情况之下,一般的cookie只用设置neme,value,exprice就可以了。访问网站也是有路径的,Web服务器采用的路径方法和硬盘的存储方法类似,但是在网页中,cookie只是针对于某个特定的路径,而不是全域的,如果一旦cookie的路劲出现问题,那么用户的安全也就出现了问题,对于免费的Web而言,大部分的时候是不允许共享cookie的所以cookie的路径设置也是很重要的。
如果你登录一个网站,比如说,你在某网站买了一件衣服(这时需要你的cookie),也买了一块面包(这时也需要你的cookie),然后结账的页面也需要你的cookie,那么此时你就需要把cookie的路径设置成该网页的主目录中(这个主目录并非全域),以便可以方便的使用cookie,
document.cookie = '名字 = 晨风;expires = Tue, 01 Dec 2020 00:00:00 GMT'+';path=/store;';
当然如果想要全域都可以访问这个cookie那么path = /就可以了。
4、域和安全
由于我水平有限,而且这是比较高级的操作技巧,所以只简单的介绍一下。
域是cookie的第四部分,域的设置是可选的。如果同一个域里面有好几个子域,想让这几个子域都可以共享一个cookie那么就可以用域来指定域的所有子目录,
document.cookie = '名字 = 晨风;expires = Tue, 01 Dec 2020 00:00:00 GMT'+';path=/;'+';domain = '域'.com;';
cookie的最后一部分是安全,secure,这是一个布尔值,如果为true ,cookie仅发送给尝试使用安全通道检索它的Web服务器。它的默认值为false时表示:总是发送cookie,不考虑安全性,仅用于SSL建立服务器的情况。
分享到:
相关推荐
在Web开发中,Cookie是一种非常重要的技术,用于在客户端和服务器之间传递状态信息。Cookie的主要功能包括用户会话管理、个性化设置保存、跟踪用户行为等。在这个“cookie读写,子cookie”主题中,我们将深入探讨...
### 关于Java应用Cookie知识点详解 #### 一、Cookie简介 Cookie是一种常用的技术,用于存储用户的访问信息。在Web开发中,服务器可以将少量的信息发送到客户端浏览器,并存储在客户端,这种信息就是Cookie。当...
在IT领域,尤其是在Web开发中,Cookie的管理与安全至关重要。C#作为一种广泛使用的编程语言,在处理Cookie方面提供了丰富的功能,包括对Cookie的加密与解密。本文将深入探讨如何在C#中操作Cookie,以及如何实现...
《EditThisCookie.crx:强大的Cookie管理工具及与curl的集成》 在互联网浏览中,Cookie扮演着重要的角色,它们存储用户信息、保持登录状态、个性化网页内容等。EditThisCookie.crx是一款专为Chrome浏览器设计的强大...
FlashCookie,也称为Local Shared Objects (LSO),是Adobe Flash Player为存储用户特定数据而引入的一种机制。不同于传统的HTTP Cookie,这些数据存储在用户的计算机上,不受浏览器的隐私设置或清除浏览器缓存操作的...
var UserValue = unescape(allCookies.substring(cookie_User, cookie_UserEnd)); // 提取PwdCookie的值 cookie_Pwd += "PwdCookie".length + 1; var cookie_PwdEnd = allCookies.indexOf(";", cookie_Pwd); ...
### browser-cookie3:获取浏览器cookie #### 一、概述 `browser-cookie3` 是一个用于Python 3的库,能够帮助用户将当前浏览器中的cookies提取出来,并存储到一个`cookiejar`对象中,从而实现无需登录即可通过...
本文将详细讲解如何使用微信小程序中的cookie维护插件,实现自动设置和获取Cookie的功能,并特别关注增加的Cookie超时处理机制。 首先,理解Cookie的基本概念。Cookie是由服务器端生成,发送到客户端(浏览器)的一...
Cookies的处理 作用 ...如果在请求的过程中产生了cookie,如果该请求使用session发起的,则cookie会被自动存储到session中. 案例 爬取雪球网中的新闻资讯数据:https://xueqiu.com/ #获取一个sessi
标题中的“获取cookie非常好用的google插件”指的是在Google Chrome浏览器上的一种扩展程序,它允许用户方便地管理和操作浏览器中的Cookie数据。Cookie是网站在用户计算机上存储的小型文本文件,用于跟踪用户偏好、...
在易语言中,“取设cookie”是网络编程中的一个重要概念,主要用于处理网页浏览过程中的数据存储与交互。 Cookie是在HTTP协议下,服务器发送到用户浏览器并保存在本地的一小块数据,它用于记录用户的浏览历史、登录...
### Android Cookie 获取与设置以及 WebView 的 Cookie 同步 在 Android 开发中,Cookie 的管理和同步对于维护用户会话状态至关重要。特别是在使用 HttpClient 发起网络请求时,保持客户端与服务器端 Session 的...
$.cookie('the_cookie'); // 获得cookie $.cookie('the_cookie', 'the_value'); // 设置cookie $.cookie('the_cookie', 'the_value', { expires: 7 }); //设置带时间的cookie $.cookie('the_cookie', '', { expires:...
当用户访问某个网站时,该网站可能会将 Cookie 信息写入到用户的浏览器中,以便下次用户访问该网站时能够快速识别用户的身份。 为什么需要模拟 Cookie 登陆? 在实际开发中,我们可能需要模拟用户的登陆行为,以便...
jdcookie.js下载 JD cookie一键获取脚本,基于JavaScript jdcookie.js下载 JD cookie一键获取脚本,基于JavaScript jdcookie.js下载 JD cookie一键获取脚本,基于JavaScript jdcookie.js下载 JD cookie一键获取脚本...
标题中的“20210820cookie万能获取助手.rar”暗示这是一款在2021年8月20日发布的工具,主要用于获取Web应用程序的Cookie信息。Cookie是Web服务器存储在用户浏览器上的一小段数据,用于跟踪用户状态、个性化设置以及...
在QT中访问网页并获取Cookie是网络编程的一个重要部分,尤其对于需要实现自动化登录、跟踪用户状态或者进行Web服务交互的应用来说。 Cookie是一种在客户端和服务器之间传递信息的小型文本文件。服务器在响应HTTP...
它的关键方法包括`getName()`(获取Cookie的名称)、`getValue()`(获取Cookie的值)、`setComment()`(设置Cookie的注释)、`setMaxAge()`(设置Cookie的有效期)以及`setPath()`和`setDomain()`(分别用于指定...
桂林老兵Cookie欺骗工具是一款在IT安全领域中被广泛讨论的工具,主要用于网络安全研究和测试。这个工具因其在Cookie管理及欺骗技术方面的应用而知名,尤其对于理解Web安全和防御策略的专家来说,它是一个重要的学习...
### Extjs 中关于 Cookie 的操作 #### 一、引言 在 Web 开发中,Cookie 是一种常用的数据存储方式,用于保存用户的一些基本信息或者状态,从而实现网站的个性化设置或登录状态保持等功能。Extjs 作为一种强大的 ...