Is a response-body allowed for a HTTP-DELETE-request?
RestHttpHttp DeleteRest Problem Overview
I assume the response code 200 always allows for a response-body, but I can't find any explicit mention of response-bodies for DELETE-requests.
Rest Solutions
Solution 1 - Rest
It is explicitly mentioned here in the RFC
The short answer is:
You should include a response body with an entity describing the deleted item/resource if you return 200.
202 is something like an asynchronous request/response return status.
204 says explicitly that you do not include a response body
Solution 2 - Rest
Yes, you should usually respond with a 200 response code as per the W3C spec:
> 9.7 DELETE > > The DELETE method requests that the > origin server delete the resource > identified by the Request-URI. This > method MAY be overridden by human > intervention (or other means) on the > origin server. The client cannot be > guaranteed that the operation has been > carried out, even if the status code > returned from the origin server > indicates that the action has been > completed successfully. However, the > server SHOULD NOT indicate success > unless, at the time the response is > given, it intends to delete the > resource or move it to an inaccessible > location. > > A successful response SHOULD be 200 > (OK) if the response includes an > entity describing the status, 202 > (Accepted) if the action has not yet > been enacted, or 204 (No Content) if > the action has been enacted but the > response does not include an entity. > > If the request passes through a cache > and the Request-URI identifies one or > more currently cached entities, those > entries SHOULD be treated as stale. > Responses to this method are not > cacheable.