Ryn*_*Ryn 6 methods post get http put
我读过很多这方面的讨论,比如PUT是幂等的而POST不是等等。但是,这最终不取决于服务器是如何实现的吗?开发人员始终可以构建后端服务器,使 PUT 请求不是幂等的,并为多个请求创建多个记录。开发人员还可以为 PUT 请求构建端点,使其充当 DELETE 请求并删除数据库中的记录。
所以我的问题是,考虑到我们不考虑任何服务器端代码,HTTP 方法之间是否有任何真正的区别?例如,GET 和 POST 的真正区别在于您无法使用 GET 请求发送正文,但可以使用 POST 请求发送正文。另外,据我了解,大多数浏览器中通常会默认缓存 GET 请求。
HTTP 请求方法是否不仅仅是一种逻辑结构(语义),以便作为开发人员我们可以根据我们发送的 HTTP 请求类型“预期”某种行为?
你是对的,大多数差异都在语义级别上,如果你的组件决定分配其他语义,这也将起作用。除非涉及到您无法控制的组件(库、代理、负载均衡器等)。
例如,某些组件可能会利用 PUT 幂等这一事实,因此可以重试,而 POST 则不然。
| 归档时间: |
|
| 查看次数: |
859 次 |
| 最近记录: |