When building a RESTful HTTP service, and a Response is given with a 204 No Content (e.g. after the Consumer issues a DELETE Request), what Content-Type should the Response include?
Should it be omitted? Is there a preferred Content-Type? Should it be the same Content-Type of a GET Request to the same Resource? Does it not matter whatsoever?
You have
Content-Type
when you have content and even then it's optional:(from RFC2616, §7.2.1, please note the use of SHOULD).
Since there is no content, then there is no reason to specify a
Content-Type
header.Well, there's a little more to the story though, and it involves when the real-world (browsers) meet the theoretical world (specifications). Seems Firefox (ver 38 as I write this) has a bug where the browser attempts to parse the content as xml if there's no content-type header, EVEN WHEN the response code is 204 (no content). See https://bugzilla.mozilla.org/show_bug.cgi?id=521301
So, while a content type header doesn't make much sense when there's no content (and there MUST NOT be content on a 204) it seems to make sense to return some header anyway. And I don't see where that would be a violation of the spec.