为:
如果客户端多次发送相同的PUT有效负载,则服务器应每次覆盖资源,或者如果数据不变,请跳过写操作?
如果服务器跳过冗余写作,它如何检测数据是相同的(例如,比较哈希,逐场检查还是使用ETAG/IF-Match标头)?
-
删除:
如果客户端发送了不再存在的资源的删除请求,则服务器应返回:
找不到404(表示资源已经消失)?
204没有任何内容(将其视为成功,因为实现了所需的状态)?
-
MDN的文档很清楚地指出:-
为了使人掌握,仅考虑服务器的状态。每个请求返回的响应可能会有所不同。
在PUT
- 从掌声的角度来看,在对象的末端很重要。
服务器是检查对象的当前状态,盲目覆盖它还是做其他事情是无关紧要的。只要在请求的处理结束时,对象的状态与请求中描述的状态匹配,则将处理视为diadempotent。
如上所述,在