我想知道人们对在响应体中不返回任何(null)的RESTful PUT操作有什么看法。
当前回答
Http方法“PUT”可能具有不同的Http状态,根据传递的请求- uri的执行状态。下表可能有助于理解-
其他回答
如果REST API的后端是一个SQL关系数据库,那么
您应该在每个可以更新的记录中都有RowVersion(以避免丢失更新问题) 您应该总是在PUT之后返回记录的新副本(以获得新的RowVersion)。
如果您不关心丢失的更新,或者您希望强制客户端在PUT之后立即执行GET,那么不要从PUT返回任何东西。
看起来好…虽然我认为一个基本的指示成功/失败/时间张贴/#字节接收/等等。会更好。
编辑:我一直在考虑数据完整性和/或记录保存;元数据,如MD5散列或接收时间的时间戳,可能对大型数据文件有帮助。
HTTP/1.1规范(第9.6节)讨论了适当的响应/错误代码。但是,它不处理响应内容。
你想要什么?一个简单的HTTP响应代码(200等)对我来说似乎是直接而明确的。
空的Request体符合GET请求的原始目的,空的响应体也符合PUT请求的原始目的。
“Created”的Http响应代码201以及指向客户端可以找到新创建资源的“Location”标头。
推荐文章
- 跨REST微服务的事务?
- JSF资源库的用途是什么,应该如何使用它?
- 获取操作系统级别的系统信息
- getResourceAsStream返回null
- PATCH和PUT请求的主要区别是什么?
- 调用webrequest, POST参数
- 如何在Spring RestTemplate请求上设置“接受:”头?
- REST API最佳实践:查询字符串中的参数vs请求体中的参数
- Java中SOAP和rest式web服务的主要区别
- Android Scala编程
- 如何为Java创建REST客户端?
- Android 8.1升级后start前台失败
- file_get_contents(): SSL operation failed with code 1, failed to enable crypto
- 在HttpClient和WebClient之间进行选择
- 执行没有实体主体的HTTP POST被认为是不好的做法吗?