cookie的工作原理

作者: 卜了了 | 来源:发表于2017-08-28 11:30 被阅读13次

因为前面遇到个问题,通过cookie添加,在自动化测试执行py文件时,直接跳过验证码的输入,结果遇到cookie添加失败,不得已,过来了解cookie。本文整理自网络,不一一列链接了。下面从cookie是什么等一一说明:

cookie是什么?

在计算机语言中,Cookie指的是当你浏览某网站时,网站存储在你电脑上的一个小文本文件,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。它记录了你的用户ID,密码、浏览过的网页、停留的时间等信息,用于用户身份的辨别。Cookie通常是以user@domain格式命名的,user是你的本地用户名,domain是所访问的网站的域名。这个基于文本的信息存储着一些“键-值”对。

一个web站点要为每一个来访者建立一个唯一的ID号码,并且将这个号码存储到每个来访者的机器的Cookies中,这个id同上面提到的用户ID

cookie的内容主要包括:名字,值,过期时间,路径和域。

其中域可以指定某一个域比如.google.com,相当于总店招牌,比如宝洁公司,也可以指定一个域下的具体某台机器比如www.google.com或者froogle.google.com,可以用飘柔来做比。

路径就是跟在域名后面的URL路径,比如/或者/foo等等,可以用某飘柔专柜做比。

路径与域合在一起就构成了cookie的作用范围。

如果不设置过期时间,则表示这个cookie的生命期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。这种生命期为浏览器会话期的cookie被称为会话cookie。会话cookie一般不存储在硬盘上而是保存在内存里,当然这种行为并不是规范规定的。如果设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie仍然有效直到超过设定的过期时间。

(我就是想利用这个名字和值,加入用户名和密码,进一步实现不再需要输入用户名密码以及验证码而进入系统内容)

为什么要Cookie

因为HTTP协议是无状态的,对于一个浏览器发出的请求,服务器无法区分是不是同一个来源,无法知道上一次用户做了什么。所以,需要额外的数据用于维护会话。 Cookie 正是这样的一段随HTTP请求一起被传递的额外数据,用于维护浏览器和服务器的会话。我们可以想象一个场景,你没有登录京东时在京东上购物,选择了3件商品放入购物车,在结算时,京东为什么还能知道这三件商品是什么?没错,是Cookie!

Cookie的工作原理

Cookie利用网页代码中的HTTP头信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。例如:当你在浏览器地址栏中键入了Amazon的URL,浏览器会向Amazon发送一个读取网页的请求,并将结果在显示器上显示。在发送之前,该网页在你的电脑上寻找Amazon网站设置的Cookie文件,如果找到,浏览器会把Cookie文件中的数据连同前面输入的URL一同发送到Amazon服务器。服务器收到Cookie数据,就会在他的数据库中检索你的ID,你的购物记录、个人喜好等信息,并记录下新的内容,增加到数据库和Cookie文件中去。如果没有检测到Cookie或者你的Cookie信息与数据库中的信息不符合,则说明你是第一次浏览该网站,服务器的CGI程序将为你创建新的ID信息,并保存到数据库中。(此例子来源于百度百科——Cookie

而cookie的使用是由浏览器按照一定的原则在后台自动发送给服务器的。浏览器查所有存储的cookie,如果某个cookie所声明的作用范围大于等于将要请求的资源所在的位置,则把该cookie附在请求资源的HTTP请求头上发送给服务器。意思是麦当劳的会员卡只能在麦当劳的店里出示,如果某家分店还发行了自己的会员卡,那么进这家店的时候除了要出示麦当劳的会员卡,还要出示这家店的会员卡。

Cookie的位置

1、Http Cookie的位置

Windows 9X系统 C:WindowsCookies

Windows NT/2000/XP系统 C:\Documents and Settings\用户名\Cookies

win7系统 ?C:\Users\*\AppData\Roaming\Microsoft\Windows\Cookies\*

找到coockie文件夹,这个文件夹是隐藏的,需要设置,然后可以看到

OS X系统 ~/Users/用户名/Library/Cookies

2、Flash Cookie的位置

非Win7系统

C:\Documents and Settings\[username你的用户名]\Application Data\Macromedia\Flash Player\#SharedObjects

Win7

C:\Users\[username你的用户名]\Application Data\Macromedia\Flash Player

其中:Users可能显示为“用户”

OS X系统

~/Users/用户名/Library/Preferences/Macromedia/Flash Player/#SharedObjects

~/Users/用户名/Library/Preferences/Macromedia/Flash Player/macromedia.com/support/flashplayer/sys/

相关文章

  • cookie与session原理简要

    一 .Cookie和Session的作用和工作原理 1.cookie工作原理 1、创建Cookie 当用户第一次浏...

  • cookie的工作原理

    因为前面遇到个问题,通过cookie添加,在自动化测试执行py文件时,直接跳过验证码的输入,结果遇到cookie添...

  • cookie的工作原理

    说明:文章所有内容均节选自实验楼教程【实现express框架中的session中间件】,该教程总共6节内容,文章选...

  • cookie记录用户名

    在说如何用cookie记录用户名之前,我们先来说说cookie的工作原理: cookie : 存储数据,当用户访问...

  • cookie总结

    Cookie总结 Cookie虽然是一个简单实用的对象,但是我们也要注意Cookie的工作原理、大小限制以及安全性...

  • Cookie和Session的工作原理及比较

    Cookie和Session的工作原理及比较 一、Cookie详解 1、简介 因为HTTP协议是无状态的,即服务器...

  • Http Session和Cookie

    Session和Cookie原理

  • 前端面试的一些准备

    bootstrap优势 Web服务器的工作原理可以简单地定义为: cookie,localStorage,sess...

  • Cookie 专题- 网络广告代理商是如何通过 cookie 收

    转载一篇知乎文章,不用再写了,写的很详细 目的,了解cookie和cookie工作原理,和你的信息是如何被窃取和非...

  • JavaWeb-Cookie&Session

    本文主要讲解Cookie和Session的机制与原理 cookie机制: 正统的cookie分发是通过扩展HTTP...

网友评论

本文标题:cookie的工作原理

本文链接:https://www.haomeiwen.com/subject/endudxtx.html