Skip to Content
This is the Beta version of our new Learning Paths approach. Please email feedback.

HyperText Transfer Protocol (HTTP)

HTTP is an application-layer protocol that follows a request-response pattern between a client and a server. The client opens a connection with the server and sends it a request for data. The client then waits and keeps the connection open until it receives a response from the server. Once the response is received, it could be the requested data or an error response, the client closes the connection. For the next request, it opens a new connection. HTTP is a stateless protocol, which means that the client or the server does not keep any data (state) between two requests.

HTTP is the application protocol used by the World Wide Web (referred to as WWW or the Web). The Web started as a relatively simple solution to share content in multiple formats, including text documents, images, videos, and audio. It evolved into a comprehensive solution and is now the basis for almost everything we do today on the Internet. That is why the Internet and the World Wide Web are so often used interchangeably, although they are technically very different things.

In the context of the World Wide Web, a client is referred to as a Web Browser and a server as a Web Server. The text that is requested by the client and sent by the server is known as Hypertext. HyperText has a concept of hyperlinks, that link multiple hypertext documents. Hypermedia is a term used for content other than text, including images, video, and audio. The World Wide Web is a collection of hypermedia.

The HTTP protocol is not limited to a request for content, it can also be a request for transactions. The client can send any kind of data to the server which will process it and send back a response after processing the data. The protocol is also not only limited to a web browser but also to other clients. For example, in machine-to-server communication in an IoT solution, the request is not initiated by a human but rather by a machine. All web and mobile applications use the HTTP protocol for their transactions.

A security protocol known as Transport Layer Security (TLS), earlier known as Secure Sockets Layer (SSL), is used in conjunction with HTTP to encrypt the data being transferred. With TLS, the HTTP protocol becomes the HTTPS protocol, where S stands for “secure”. Read more about this in the following lessons on Security.