HTTP是无状态的,是指协议对于事务处理没有记忆能力。浏览器第一次向服务器发送请求,服务器给出响应;同一个浏览器第二次向服务器发送请求,浏览器同样给出响应,但是因为HTTP协议无状态,没有记忆能力,所以服务器不知道这个浏览器上次来过,第二次给出响应和第一次给出响应相同,每次都需要重传信息,导致传送的数据量增大。
如何解决无状态这个问题呢?答案是加入Cookie。
Cookie是浏览器在本地存储用户自定义数据的一种关键机制。
Cookie中存储了一个字符串,通过它可以实现“身份标识”的功能。
通俗点可以理解为,浏览器是一个人,服务器是一个没有感情的机器人。
在加入Cookie之前,小男孩每次对机器人介绍自己,机器人都像第一次认识小男孩一样。
加入Cookie后,小男孩带着Cookie向机器人问好,机器人就能够通过Cookie想起来:“你是上次跟我说过话的小男孩”。
另:每个人都是不同的个体,每个网站也有不同的Cookie。同一个网站的不同界面(登录页、搜索页、结果页)公用同一份Cookie,不同的网站(搜狗、百度、淘宝)各自有各自的Cookie。