Join the AI Workshop and learn to build real-world apps with AI. A hands-on, practical program to level up your skills.
HTTP (Hypertext Transfer Protocol) is one of the application protocols of TCP/IP, the suite of protocols that powers the Internet.
Let me fix that: it’s not one of the protocols; it’s the most successful and popular one by far.
HTTP is what makes the World Wide Web work, giving browsers a language to communicate with remote servers that host web pages.
HTTP was first standardized in 1991, as a result of the work that Tim Berners-Lee did at CERN, the European Center of Nuclear Research, since 1989.
The goal was to allow researchers to easily exchange and interlink their papers. It was meant as a way for the scientific community to work better.
Back then, the Internet’s main applications consisted of FTP (the File Transfer Protocol), email, and Usenet (newsgroups, now almost abandoned).
In 1993, Mosaic, the first graphical web browser, was released, and things skyrocketed from there.
The Web became the killer app of the Internet.
Over time, the Web and the ecosystem around it have dramatically evolved, but the basics still remain. One example of this evolution is that HTTP now powers, in addition to web pages, REST APIs, a common way to programmatically access a service over the Internet.
HTTP got a minor revision in 1997 with HTTP/1.1, and in 2015 its successor, HTTP/2, was standardized and is now implemented by major web servers across the globe.
The HTTP protocol is considered insecure, just like any other protocol (SMTP, FTP, etc.) not served over an encrypted connection. This is why there is a big push nowadays to use HTTPS, which is HTTP served over TLS.
That said, the building blocks of HTTP/2 and HTTPS have their roots in HTTP, and in this lesson I’ll introduce how HTTP works.
HTTP is the way web browsers like Chrome, Firefox, Edge, and many others (also called clients from here on) communicate with web servers.
The name Hypertext Transfer Protocol derives from the need to transfer not just files, like in FTP (File Transfer Protocol), but hypertext written using HTML and then rendered by the browser with a nice presentation and interactive links.
Links were the driving force behind adoption, along with the ease of creation of new web pages.
HTTP is what transfers those hypertext files (and, as we’ll see, images and other file types) over the network.
An HTTP server will not just transfer HTML files, but typically it will also serve other files: CSS, JS, SVG, PNG, JPG, and many other file types.
This depends on the configuration.
HTTP is perfectly capable of transferring those files as well, and the client will know the file types and interpret them in the right way.
This is how the web works: when an HTML page is retrieved by the browser, it’s interpreted and any other resource it needs to display properly (CSS, JavaScript, images) is retrieved through additional HTTP requests to the same server.
Lessons in this unit:
| 0: | Introduction |
| 1: | ▶︎ The HTTP protocol |
| 2: | Hyperlinks |
| 3: | What is a Web server |
| 4: | What is a Web browser |
| 5: | Roadmap to learn the Web Platform |