Do I need a content-type header for HTTP GET requests?

content-type, get, http

Solution

According to the RFC 7231 section 3.1.5.5:

A sender that generates a message containing a payload body SHOULD generate a Content-Type header field in that message unless the intended media type of the enclosed representation is unknown to the sender. If a Content-Type header field is not present, the recipient MAY either assume a media type of "application/octet-stream" ([RFC2046], Section 4.5.1) or examine the data to determine its type.

It means that the `Content-Type` HTTP header should be set only for `PUT` and `POST` requests.

Problem

As far as I understood there are two places where to set the content type: - The client sets a content type for the body he is sending to the server (e.g. for post) - The server sets a content type for the response. Does this mean I don't have to or should not set a content type for all my get requests (client side). And if I can or should what content type would that be? Also I read in a few posts that the content type of the client specifies what type of content the client would like to receive. So maybe my point 1 is not right?

Original source

Related problems