【图解HTTP】——简单的http协议

HTTP协议

  • HTTP协议用于客户端和服务器端之间的通信

应用http协议必定一端为客户端,一端为服务器端
客户端发送请求,服务器端返回响应

GET /index.htm HTTP/1.1 # 访问服务器的类型+访问资源对象URI+HTTP版本
Host:hacker.jp

HTTP是不保存状态的协议

  • HTTP是一种无状态(stateless)协议,自身不会对请求和响应之间的通信进行保存,每当有新的请求发送时,就会有对应的新响应产生
    在这里插入图片描述
  • 目的:更快的处理大量事物,确保协议的可伸缩性
  • 缺点:例如用户登录网站,就不能保存登录状态
  • 引入:Cookie技术,对通信状态进行保存

请求URI定位信息

  • HTTP使用URI定位网络上的资源
    在这里插入图片描述
  • 完整的URI请求:

GET http//hacker.jp/index.htm HTTP/1.1

  • 首字段写明域名

GET/index.htm HTTP/1.1
Host: hacker.jp

告知服务器意图的方法

  • GET:获取资源,请求已被URI识别的资源
    在这里插入图片描述
  • POST:传输实体主体
    在这里插入图片描述
  • PUT:传输文件
    在这里插入图片描述
  • HEAD:获得报文首部,用于确认URI的有效性以及资源的更新的日期
    在这里插入图片描述
  • DELETE:删除文件
    在这里插入图片描述
  • OPTIONS:询问支持的方法
    在这里插入图片描述
  • TRACE:追踪路径
    在这里插入图片描述
  • CONNECT:要求用隧道协议连接代理
    在这里插入图片描述

响应:请求成功但无数据返回
在这里插入图片描述

持久连接(Keep Alive)

  • 建立TCP连接:三次握手

(1)——>SYN——>
(2)<——SYN/ACK<——
(3)——>ACK——>

  • HTTP初代时,每进行一次HTTP通信,就要断开一次TCP连接
  • 持久连接:
    在这里插入图片描述

管线化

  • 不用等响应,直接连续发送请求

使用Cookie技术进行状态管理

  • 无保存状态好处:减少CPU和内存资源
  • Cookie技术:通过在请求和响应报文中写入cookie信息,控制客户端状态
    在这里插入图片描述
发布了234 篇原创文章 · 获赞 107 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_44478378/article/details/105133375