HTTP(Hyper Text Transfer Protocol),译为超文本传输协议
- 是互联网中应用最广泛的应用层协议之一
- 设计HTTP最初的目的是:提供一种发布和接收HTML页面的方法,由URI来标识具体的资源
- 后面用HTTP来传递的数据格式不仅仅是HTML,应用非常广泛
维基百科对http的定义:

- HTTP的标准
- 由万维网协会(W3C)、互联网工程任务组(IETF)协调制定,最终发布了一系列的RFC
请求方法:
◼ RFC 7231, section 4: Request methods:描述了8种请求方法
GET、HEAD、POST、PUT、DELETE、CONNECT、OPTIONS、TRACE
◼ RFC 5789, section 2: Patch method:描述了PATCH方法
◼ GET:常用于读取的操作,请求参数直接拼接在
URL的后面(浏览器对URL是有长度限制的)
◼ POST:常用于添加、修改、删除的操作,请求参数可以放到请求体中(没有大小限制)
◼ HEAD:请求得到与GET请求相同的响应,但没有响应体
使用场景举例:在下载一个大文件前,先获取其大小,再决定是否要下载。以此可以节约带宽资源
◼ OPTIONS:用于获取目的资源所支持的通信选项,比如服务器支持的请求方法
OPTIONS * HTTP/1.1
◼ PUT:用于对已存在的资源进行整体覆盖
◼ PATCH:用于对资源进行部分修改(资源不存在,会创建新的资源)
◼ DELETE:用于删除指定的资源
◼ TRACE:请求服务器回显其收到的请求信息,主要用于HTTP请求的测试或诊断
◼ CONNECT:可以开启一个客户端与所请求资源之间的双向沟通的通道,它可以用来创建隧道(tunnel)
可以用来访问采用了 SSL (HTTPS) 协议的站点
抓包分析http请求头:

这是最原生的请求报文
可以清楚的看到请求报文分为
- 请求行
- 请求方法 空格 请求资源路径 空格 请求协议/版本号
- 请求头
- key : value
- 回车换行
- 请求体(post请求)
- 一些参数
http响应头:

可以清楚的看到响应报文分为
- 响应行(状态行)
- 请求方法 空格 请求资源路径 空格 请求协议/版本号
- 响应头
- key : value
- 回车换行
- 响应体
- 响应的数据
关于请求头和响应头的字段;自己百度看吧