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版本不受支持 |