Is this statement correct? HTTP GET method always has no message body
http-headers
Solution
Neither restclient nor REST console support this but curl does.
The original HTTP 1.1 specification says in section 4.3
A message-body MUST NOT be included in a request if the specification of the request method (section 5.1.1) does not allow sending an entity-body in requests.
Section 5.1.1 redirects us to section 9.x for the various methods. None of them explicitly prohibit the inclusion of a message body. However...
Section 5.2 says
The exact resource identified by an Internet request is determined by examining both the Request-URI and the Host header field.
and Section 9.3 says
The GET method means retrieve whatever information (in the form of an entity) is identified by the Request-URI.
Which together suggest that when processing a GET request, a server is not required to examine anything other that the Request-URI and Host header field.
In summary, the HTTP spec doesn't prevent you from sending a message-body with GET, but there is sufficient ambiguity that it wouldn't surprise me if it was not supported by all servers.
Problem
Is this statement correct? HTTP GET method always has no message body. I didn't find any part of RFC2616 explicitly say this. And if this is not true, then in what circumstances will an Http GET request include a message body