REST用状态代码和Put和Delete最佳实践的行为

时间:2013-05-27 15:48:50

标签: http rest model-view-controller restful-url

我得到了一些RESTful最佳实践问题:

1)如果服务器收到DELETE请求,并找到资源并将其删除。回应什么是好的做法? 200 OK对我来说似乎最自然,但你也有代码如202 Accepted。使用后者可能会让客户更明显地知道它是服务器处理的东西,而不仅仅是响应OK。

2)如果服务器在同一资源上收到另一个DELETE请求。这里有什么最好的做法,你回答404资源未找到,或者你只回答200 OK(或202 OK),推理DELETE和PUT应该是幂等的吗?

3)服务器收到PUT请求,但在数据库中找不到记录。你有什么回应? 404?一些其他代码的目标是我们想告诉客户它不是真正的“web 404”,但事实是我们找了它但却找不到资源?

4)您何时回复消息而不仅仅是状态代码?

  

200 OK {“消息”:“客户已被删除”}

感到多余。

1 个答案:

答案 0 :(得分:0)

1)我不明白。 200在这里是正确的。 202是其他内容(“请求已被接受处理,但处理尚未完成。”)。

2)没关系。真。

3)然后创建记录。

4)如果你没有比说好的话,那就不要。