无状态的http协议
HTTP是无状态的协议
- 所谓的无状态,是指当浏览器与服务器之间进行基于http协议进行通信时,协议对于交互性场景没有记忆能力。
下面对用APP购物进行举例
- 首先进行登录
- 用户通过http把用户的用户名和密码发送给服务器
- 服务器将之与已有用户资料对比,一致,登录成功
- 添加商品
- 进入商品详情,如果需要用户身份才能访问,虽然上一步已经登陆成功
- 但是没有cookie、session、token时,会访问失败
- 因为服务器既不会记得你登录的状态,你的客户端也不会存储你刚才输入的用户名和密码
- 只能在访问时继续输入你的用户名和密码
- 当你选种商品时,先通过用户名和密码验证你的身份,再访问你的数据库,并在购物车属性下添加该商品的数据
- 每次添加一个商品,重复上述操作
- 存在问题
- 每一步设计访问网址的操作都需要重登录
- 每次操作都与数据库进行交互
- 解决问题
- 在用户端增加一个记录本(cookie机制,标识访问身份)
- 服务器增加缓存区(避免多次访问数据库,使用session机制解决)