Exploring HTTP
With HTTP, a client application sends a specially formatted request to a server and then awaits a response. Technically, HTTP is a stateless protocol. This means that the server is not required to maintain any state information related to the client. Each client request can be treated individually as a new operation. The server does not need to store client-specific information.
Many servers do maintain some sort of state across multiple requests, though, such as when you make a purchase online, and the server needs to store the products you have selected; however, the basic protocol does not require this.
HTTP is a textual protocol (with allowances for compression). An HTTP request includes the following parts:
- An operation (called a request method), a resource identifier for the operation, and optional parameters on a line.
- Request headers; one per line.
- An empty line.
- A message body, which is optional.
- Each line ends with two characters...