HTTP, also known as Hypertext Transfer Protocol, is an application protocol used for communication on the World Wide Web (WWW). It specifies how messages should be formatted and transmitted, as well as what actions Web servers and browsers should take in response to various commands received.
HTTP is the backbone of data communication on the World Wide Web, supporting various types of data such as HTML pages, images, videos and other multimedia content. It works as a client-server protocol – requests are sent from a client (like a web browser) to a server and received by that same server with all requested details.
HTTP utilizes a request-response model, in which the client sends a request message to the server and receives back an answer with requested data. A request message consists of several elements such as a request line specifying what type of request (like GET or POST), headers providing additional context about the request, and optional message body containing any data sent directly by the client to the server.
Similar to a response message, which consists of a response line specifying the status (such as 200 OK or 404 Not Found), response headers that provide additional details about the response, and an optional message body containing requested data.
HTTP is an insecure protocol, meaning the data transmitted over it isn’t encrypted and could be read or intercepted by anyone with the right tools. To address this problem, HTTPS (HTTP Secure) was developed; it encrypts transmitted data using Secure Sockets Layer/Transport Layer Security encryption.