这是我参与「第五届青训营 」伴学笔记创作活动的第 6 天
什么是HTTP?
HTTP全称为超文本传输协议。总结下来,就是如下特点:
- 无状态
- 应用层协议,基于TCP协议
- 简单可扩展(可以设置请求头之类的)
- 请求 响应
02.HTTP协议分析
HTTP发展历程:
HTTP/2在2015年,68%的公司都采用了。
报文
Requests method方法
GET 请求一个指定资源的表示形式,使用GET的请求应该只被用于获取数据
POST 用于将实体提交到指定的资源,会修改服务器那边的状态。典型应用:注册账号,修改密码
PUT 用请求的信息替换目标资源的当前信息
DELETE 删除指定的资源
HEAD 请求一个和GET请求的响应相同的响应,但没有响应体
CONNECT 建立一个到由目标资源标识的服务器的隧道
OPTIONS 用于描述目标资源的通信选项
TRACE 沿着目标资源的路径执行一个消息环回测试
PATCH 用于对资源应用部分的修改
在我们前端开发的过程中,用的比较多的已经用高亮部分表示出来了。
上述大致可以自身特点分为两类:
Safe: 不会修改服务器那边的数据 GET HEAD OPTIONS
幂等:==同样的请求被连续执行一次和执行多次==的效果都是一样的。服务器的状态也是一样的 GET HEAD OPTIONS PUT DELETE。 状态码
1**:指示信息,表示请求已经接收,需要继续处理,所以一般不会以1开头
2**:成功,表示请求已经被成功接收,理解,接受 。例如 200 OK - 客户端请求成功
3**:重定向,要完成请求必须进一步的操作。301 资源被永久转移到其它URL 302 临时跳转
4**:客户端错误,请求有语法错误或者请求无法实现。 401 没有授权 404 资源找不到
5**:服务器错误,服务器未能实现合法的请求。 500 服务器内部发生了不可预期的错误。