小编典典

REST DELETE 真的是幂等的吗?

all

DELETE 应该是幂等的。

如果我删除http://example.com/account/123,它将删除该帐户。

如果我再做一次,我会期待 404,因为该帐户不再存在?如果我尝试删除一个从未存在过的帐户怎么办?


阅读 173

收藏
2022-07-01

共1个答案

小编典典

幂等性是指请求完成后系统的状态

在所有情况下(除了错误问题 - 见下文),该帐户不再存在。

这里

“方法还可以具有“幂等性”,因为( 除了错误或过期问题 )N > 0 个相同请求的副作用与单个请求相同。方法 GET、HEAD、PUT 和
DELETE 共享这个属性。另外,方法 OPTIONS 和 TRACE 不应该有副作用,因此本质上是幂等的。

N > 0 个相同请求的副作用 的关键位与单个请求相同。 __

您期望状态代码会有所不同是正确的,但这不会影响 幂等性的核心概念 - 您可以多次发送请求而无需对服务器状态进行额外更改。

2022-07-01