http协议的六种请求方式
1、http特点
1、无连接
2、无状态
3、客户端/服务端模型:客户端支持web浏览器或其他任何客户端,服务器通常是apache或者iis等
4、简单快速
5、灵活:可以传输任何类型的数据
2、http六种请求方式
方式 | 含义 |
---|
GET | 查看 |
POST | 创建 |
PUT | 更新 |
DELETE | 删除 |
HEAD | 检查资源 |
PATCH | 更新某些字段 |
OPTIONS | 检查请求方式 |
3、post和get区别
| GET | POST |
---|
点击返回/刷新按钮 | 没有影响 | 数据会重新提交 |
缓存/添加书签 | 可以 | 不可以 |
编码类型 | application/x-www-form-urlencoded | application/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码 |
是否幂等 | 幂等 | 非幂等 |
长度限制 | http协议没有限制,但是实际浏览器或服务器有(最大2048) | 理论上没有,可能会受到服务器配置和内存的限制 |
数据类型的限制 | 只能ASCll,非ascii都要编码传输 | 没有限制,允许二进制数据 |
安全性 | 数据全部显示在url中,不安全 | 相比git,通过request body 传递数据,比较安全 |
可见性 | 可见 | 不可见 |
4、http状态码
分类 | 分类描述 |
---|
1** | 信息,服务器收到请求,需要请求者继续执行操作 |
2** | 成功,操作被成功接收并处理 |
3** | 重定向,需要进一步的操作以完成请求 |
4** | 客户端错误,请求包含语法错误或无法请求 |
5** | 服务器错误,服务器在处理请求的过程中发生了错误 |
状态码 | 状态描述 |
---|
100 | 继续 |
101 | 交换协议 |
200 | 正常 |
201 | 创建 |
202 | 接受 |
203 | 非权威信息 |
204 | 无内容 |
205 | 重置内容 |
206 | 部分内容 |
300 | 多项选择 |
301 | 永久移动 |
302 | 临时移动 |
303 | 查看其他位置 |
304 | 未修改 |
305 | 使用代理 |
306 | 未使用 |
307 | 临时重定向 |
400 | 错误请求 |
401 | 未经授权 |
402 | 未使用 |
403 | 禁止 |
404 | 未找到 |
405 | 方法禁用 |
406 | 不接受 |
407 | 需要代理授权 |
408 | 请求超时 |
409 | 冲突 |
410 | 已删除 |
411 | 使用有效长度 |
412 | 未满足前提条件 |
413 | 请求实体过大 |
414 | 请求的URL过长 |
415 | 不支出的媒体类型 |
416 | 请求范围不符合要求 |
417 | 为满足期待值 |
500 | 内部服务器错误 |
501 | 尚未实施 |
502 | 错误网关 |
503 | 服务不可用 |
504 | 网关超时 |
505 | http版本不受支持 |