测试人员必备网络知识----------什么是cookie?

cookie定义:

 “Cookie”是小量信息,由网络服务器发送出来以存储在网络浏览器上,从而下次这位独一无二的访客又回到该网络服务器时,可从该浏览器读回此信息。这是很有用的,让浏览器记住这位访客的特定信息,如上次访问的位置、花费的时间或用户首选项(如样式表)。

Cookie 是个存储在浏览器目录的文本文件,当浏览器运行时,存储在 RAM 中。一旦你从该网站或网络服务器退出,Cookie 也可存储在计算机的硬驱上。当访客结束其浏览器对话时,即终止的所有 Cookie。

为什么要使用cookie?

首先我们都知道,web程序是使用HTTP(超文本传输协议)传输的,而HTTP协议是无状态的协议,对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。
另一方面,在服务器不需要先前信息时它的应答就较快。
所以记住上次访问相关的东西就会加快应答。

什么时候用cookie?(免登录场景)

Cookie的使用一先要看需求。因为浏览器可以禁用Cookie,同时服务端也可以不Set-Cookie。
一般来说,访问html不产生cookie,访问jsp,servlet产生cookie。客户端向服务器端发送一个请求的时,服务端向客户端发送一个cookie 然后浏览器将Cookie保存。

cookie有两种保存方式,一种是浏览器会将cookie保存在内存中,还有一种是保存在客户端的硬盘中,之后每次http请求浏览器都会将cookie发送给服务器端。

具体流程如下:
客户端提交一个HTTP请求给服务端
服务端这个时候做了两件事,一个是Set-Cookie,还有一个是提交响应内容给客户端 客户端再次向服务器请求时会在请求头中携带一个Cookie服务端提交响应内容给客户端

举例:分登录之前和登录后,登录前服务端给浏览器一个Cookie,但是这个Cookie里面没有用户信息,但是登录成功之后,服务端给浏览器一个Cookie,这个时候的Cookie已经记录了用户的信息,在系统内任意访问,可以实现免登录。

你可能感兴趣的:(测试)