HTTP协议相关知识

2020-09-04  本文已影响0人  redoboy

TCP协议的三次握手其实就是解决连接的可靠性。


抓包信息

解释一下相关符号:

  1. 客户端A发送一个SYN包,其中包含一个seq,产生一个随机值这里我称为x,这个时候客户端A状态变成SYN-SENT状态
  2. 服务器B收到客户端A发来的SYN包,确认信息并发送一个(SVN+ACK)包返回给客户端A:seq=y(这里也是服务端产生的另外一个随机值), ack=x+1,服务端B状态变成SYN-RCVD状态
  3. 客户端A收到服务端发来的SYN包,确认信息并发送一个(SYN+ACK)包给服务端B: seq=x+1, ack=y+1, 此包发送完毕,客户端和服务端进入ESTABLISHED状态.完成三次握手,这样就保证了连接的可靠性。

说白了:

请求报文格式
请求报文由三部分组成:请求行、请求头、请求实体
具体请求报文
请求行由①②③组成,空格分割
① 请求方法:常用:GET、POST、DELETE 不常用:PUT、OPTIONS、PATCH、TRACE、HEAD、CONNECT
② 请求URL
③ HTTP协议/协议版本
④ 请求头:由头部字段名和值组成
⑤ 请求体(一般不用)
\color{#FF3030}{请求行、请求头、请求体对应结束都添加上回车符换行符 “/r/n”,请求头后面有两个,这个空行表示没有更多的请求头了}
请求方法 描述
GET 请求一个指定资源的表示形式。使用GET请求\color{#FF3030}{应该}只被用于获取数据
POST POST方法用于将实体提交到指定资源,通常导致再服务器上的状态变化和副作用
DELETE DELETE方法删除指定的资源。
PUT PUT方法用请求有效载荷替换目标资源的所有当前表示。
PATCH PATCH方法用于对资源应用部分修改。
TRACE TRACE方法沿着到目标资源的路径执行一个消息环回测试
HEAD HEAD方法请求一个与GET请求的响应相同的响应,但没有响应体.
CONNECT CONNECT方法建立一个到由目标资源标识的服务器的隧道
常见的请求头
上一篇 下一篇

猜你喜欢

热点阅读