HTTP协议
2019-08-18 本文已影响0人
Cuccci
HTTP协议
1. 什么是HTTP?
HTTP是一个简单的请求-响应协议,它属于TCP/IP协议的应用层中的协议。 HTTP协议是一种无状态的,即通信时不对请求和响应的状态进行保存。
2. HTTP报文
-
请求报文
请求报文由请求方法、请求地址、协议版本、请求内容(请求首部字段)
-
响应报文
响应报文由状态码、状态码的原因短语、协议版本、响应结果(响应首部字段)
3. 常用的HTTP请求方法
请求方法 | 方法含义 | 支持的协议版本 |
---|---|---|
GET | 获取资源 | 1.0、1.1 |
POST | 传输实体主体 | 1.0、1.1 |
PUT | 传输文件 | 1.0、1.1 |
DELETE | 删除文件 | 1.0、1.1 |
POST | 传输实体主体 | 1.0、1.1 |
HEAD | 获得报文首部 | 1.0、1.1 |
OPTIONS | 访问支持的方法 | 1.1 |
GET与POST的区别:
- 两者的语义不同:GET指的是获取数据,POST指的是传送数据
- 传输数据量不同:实际上HTTP协议规范没有对两者的长度有限制,具体传输大小视浏览器而定,一般GET的传输量较小,POST传输量较大
- 幂等性:GET支持幂等性,而POST不支持幂等性
4. 常见的HTTP状态码
状态码类别
类别 | 原因短语 | |
---|---|---|
1XX | 信息性状态码 | 接收的请求正在处理 |
2XX | 成功状态码 | 请求正常处理完毕 |
3XX | 重定向状态码 | 需要进行附加操作以完成请求 |
4XX | 客户端错误状态码 | 服务器无法处理请求 |
5XX | 服务器错误状态码 | 服务器处理请求出错 |
常见的HTTP状态码
状态码 | 含义 | 常见原因 |
---|---|---|
200 | 请求成功 | |
301 | 永久性重定向 | |
302 | 临时性重定向 | |
400 | 报文中存在错误 | 前端传参错误 |
403 | 服务器拒绝处理 | 爬虫被封禁了 |
404 | 服务器错误状态码 | url地址输入有误 |
500 | 服务器错误 | 服务端的代码错在bug |