HTTP协议中的PUT、POST和PATCH方法有什么区别?


当前回答

PUT和PATCH请求的主要区别:

假设我们有一个资源,其中包含一个人的姓和名。

如果我们想要改变名字,那么我们发送一个put请求Update

{"第一个":"迈克尔","最后一个":"安吉洛"}

在这里,虽然我们只改变了名字,但是对于PUT请求,我们必须在第一个和最后一个发送参数。 换句话说,必须再次发送所有值,即完整的有效负载。

然而,当我们发送PATCH请求时,我们只发送我们想要更新的数据。换句话说,我们只发送名字来更新,不需要发送姓氏。

其他回答

PUT和PATCH请求的主要区别:

假设我们有一个资源,其中包含一个人的姓和名。

如果我们想要改变名字,那么我们发送一个put请求Update

{"第一个":"迈克尔","最后一个":"安吉洛"}

在这里,虽然我们只改变了名字,但是对于PUT请求,我们必须在第一个和最后一个发送参数。 换句话说,必须再次发送所有值,即完整的有效负载。

然而,当我们发送PATCH请求时,我们只发送我们想要更新的数据。换句话说,我们只发送名字来更新,不需要发送姓氏。

PUT =用所提供的新表示替换整个RESOURCE

PATCH =用所提供的值替换源资源的部分和|或资源的其他部分被更新,你没有提供(时间戳)和|或更新资源影响其他资源(关系)

https://laracasts.com/discuss/channels/general-discussion/whats-the-differences-between-put-and-patch?page=1

这里是一个简单的描述:

POST总是用于创建资源(是否复制并不重要) PUT用于检查资源是否存在,然后更新,否则创建新的资源 PATCH总是用于更新资源

这样想吧……

POST - create

PUT -替换

补丁-更新

GET - read

DELETE -删除

最简单的解释:

创建新的记录

PUT -如果记录存在,更新else,创建一个新记录

补丁-更新

GET - read

DELETE -删除