Rest 为什么HTTP方法delete和put被认为是幂等的?
我读过这样的文章:“除了POST方法之外,所有HTTP方法都是幂等的” 我无法理解这种解释 依我看,, PUT和DELETE都会更改服务器上的某些内容,因此重复调用它们不会产生相同的效果Rest 为什么HTTP方法delete和put被认为是幂等的?,rest,http,Rest,Http,我读过这样的文章:“除了POST方法之外,所有HTTP方法都是幂等的” 我无法理解这种解释 依我看,, PUT和DELETE都会更改服务器上的某些内容,因此重复调用它们不会产生相同的效果 那么,为什么它们(PUT,DELETE)被认为是幂等的呢?如果你连续两次删除某个东西,那么总体效果就像你只删除了一次一样:资源消失了 如果您以相同的名称上传两次相同的数据(将),效果与您只上传了一次相同。我可以通过稍微扩展主题来回答这个问题吗 你说PUT被认为是幂等的,但是如果在响应中有一个字段,比如时间戳,即
那么,为什么它们(PUT,DELETE)被认为是幂等的呢?如果你连续两次删除某个东西,那么总体效果就像你只删除了一次一样:资源消失了
如果您以相同的名称上传两次相同的数据(
将
),效果与您只上传了一次相同。我可以通过稍微扩展主题来回答这个问题吗
你说PUT被认为是幂等的,但是如果在响应中有一个字段,比如时间戳,即“LastUpdateTime”,该怎么办
如果执行两个完全相同的更新,响应将不完全相同。。。第一个将比第二个的“LastUpdateTime”少
所以我相信,如果你以某种方式对待实现,一些动词被认为是幂等的
简短回答:“这取决于您的实施”感谢您的帮助。我知道。但我能再问一个问题吗?我理解PUT这个词,但不理解DELETE方法。如果我使用POST方法,我会发布2条消息,然后创建两条消息。如果我使用DELETE方法,我会删除2个元素,然后删除两个元素。。区别是什么?当然,我不能删除相同的数据两次吗。。?喜欢POST@jwkoo如果您再次执行
DELETE/foo
,然后执行DELETE/foo
,那么如何删除两件事?第一个DELETE
删除/foo
,然后第二个DELETE
什么也不做。