一. HTTP无状态协议
HTTP 是无状态的协议,就是不对之前发生过的请求和相应进行管理,也就无法根据之前的状态进行本次请求处理。
HTPP无状态协议存在肯定是有他的优点的,由于不用保存状态自然减少了服务器CPU及内存资源消耗。
二. Cookie引入解决无状态问题
保留无状态的这个特征的同时又要解决类似的矛盾问题,于是引入Cookie技术,Cookie技术通过在请求和响应报文中写入Cookie信息来控制客户端状态的状态
Cookie 会根据从服务器端发送的响应报文内的一个叫做set-Cookie 的首部字段信息,通知客户端保存Cookie ,当下次客户端再往该服务器发送请求时,客户端会自动在请求报文中加入Cookie值后发送出去,服务器根据Cookie判断是由哪一个客户端发来的请求。
image.png1.请求报文:没有Cookie 信息的状态
GET /reader/ HTTP/1.1
Host: [hackr.jp](http://hackr.jp)
*首部字段内没有Cookie的相关信息
2.响应报文:服务端生成Cookie 信息
HTTP/1.1200 OK
Date: Thu, 12 Jul 2012 07:12:20 GMT
Server: Apache
<Set-Cookie: sid=1342077140226724; path=/; expires=Wed, =>
10-Oct-12 07:12:20 GMT>
Content-Type: text/plain; charset=UTF-8
image.png
3.请求报文:自动发送保存着Cookie 信息
GET /image/ HTTP/1.1
Host: hackr.jpCookie: sid=1342077140226724
网友评论