PUT 和 POST 的区别
对于这两个方法我提供了几乎相同的简短描述。这两个方法困扰着许多开发人员。所以让我们单独地讨论他们。
PUT 和 POST 的关键不同在于 PUT 是幂等的,而 POST 不是。
另一个不同,使用 PUT 你需要定义资源完整的 URI。这意味着客户端能构造资源的URI哪怕资源不存在于服务器上。客户端选择资源唯一的名字或 ID 是可能的。就像在服务器上创建一个用户需要客户端选择用户 ID。如果客户端不能猜测出资源完整的URI,你别无选择,只能使用 POST。
![](https://box.kancloud.cn/55f5ed3eceecbebbacea735e63c338d3_743x179.png)
很明显,PUT 请求不会修改或创建超过一个资源,无论触发多少次(如果URI相同)。当资源存在时 PUT 和 POST 是没有区别的,都是更新已存在资源。第三个请求(POST `http://MyService/Persons/`)会在每次触发都创建资源。许多开发人员认为 REST 不允许 POST 被用于更新操作。然而,REST 并没有这样的限制。
- 《Restful Web Service Cookbook》
- 简介
- 推荐序
- 第 1 章 使用统一接口
- 1.1 如何保持交互的可见性
- 1.2 何时使用 GET 方法
- 1.3 何时使用 POST 方法
- 1.4 如何使用 POST 方法创建资源
- 目录
- PHP RESTful
- 理解RESTful架构
- 深入浅出REST
- 表述性状态转移
- 无状态
- 设计指南
- RESTful API 设计指南
- RESTful API 设计最佳实践
- 测试工具
- soapUI
- 实例
- 豆瓣
- 应用
- 接口规范
- 视频
- 《Restful API实战》
- 课程目标
- 第1章 Restful是什么
- 1-1 restful简介及资源介绍
- 第2章 为什么要使用Restful
- 2-1 Restful中HTTP协议介绍
- 2-2 架构区别
- 第3章 如何使用Restful
- 3-1 restful设计要素
- 3-2 DHC Client
- 3-3 本地开发环境搭建
- 3-4 确认设计要素
- 3-5 数据库设计
- 3-6 用户业务逻辑
- 3-7 文章业务逻辑
- 3-8 restfulApi设计要素
- 3-9 初始化运行参数
- 3-10 完善用户API
- 3-11 完善文章API
- 文摘
- RESTful 接口实现简明指南
- RESTful Web 服务教程
- 模型表示(Representations)
- 资源定位
- URI中的查询参数
- 统一接口
- PUT 和 POST 的区别
- 基于 REST 的 Web 服务
- PHP Reatful
- Restful状态响应码
- 《REST API 安全设计指南》