Would someone please describe to me what exactly an HTTP entity is?
I am reading the HTTPClient documentation, but I do not really understand what that means?
Would someone please describe to me what exactly an HTTP entity is?
I am reading the HTTPClient documentation, but I do not really understand what that means?
An HTTP entity is the majority of an HTTP request or response, consisting of some of the headers and the body, if present. It seems to be the entire request or response without the request or status line (although only certain header fields are considered part of the entity).
To illustrate; here's a request:
And a response:
As said in a comment by @hawkeye-parker, it looks like Entity has been deprecated. Make a search in this 2014 rfc, and you will see about XML entities and message body, but nothing about Http entity.
Nevertheless, HttpClient, but also JaxRS client, have a
setEntity()
andgetEntity()
method.Considering the accepted answer, both libraries are wrong !
HttpClient.setEntity()
won't remove previously set headers.I guess the HTTPClient
Entity
is named according to HTTP Entity.Entity is something like a message, it consists of header, where are metadata such as location,lang,encoding ...
And optionally of a body - it content is formated etc as specified in header
HTTP is a Protocol which is observed when accessing information from a remote machine through a network. Usually the network is internet and the remote machine is a server.
When you ask for information from person A to person B, you give him a message. (Request). Person B replies to you (Response). Request and Response are HTTP Message Types.
Person A can ask Person B to do something, instead of asking for information. Say, Person A wants Person B to store a file in a secure location. So, Person A passes that file(HTTP Entity) to Person B and ask him to do something(HTTP Message). In this case, Person is passing an "Entity". In the context of HTTP Entity, it is a payload attached with the message.
Hope the analogy helped.
Among the good answers that we have here, I believe that is worth to mention something that comes directly from the RFC 2616 (Hypertext Transfer Protocol - HTTP/1.1):
In a a nutshell: an Entity may be transferred, and it can be the header + body, or just the header.
Since that there's the link above, I detain myself on making additional comments.