
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Explore how the internet truly works behind the scenes by learning the http protocol, methods, and return codes, through practical coding steps you can follow at your own pace.
Learn how http status codes classify responses into informational, success, redirection, client error, and server error, with examples like 200, 301, 404, and 500 to diagnose web requests.
Explore http request methods and their crud mappings, learn safe vs unsafe verbs, idempotency, and how techniques like get, post, put, delete, patch, head, and options shape web APIs.
Introduce the http protocol and its role in transferring data on the web. Understand the client-server, stateless request-response model and the basics of get and post, plus TLS/SSL security.
Explore the main http components, including the client and browser, web server, databases, and proxies that route, filter, and balance requests to deliver html.
Explore the http workflow by examining how a client opens or reuses a tcp connection, sends a request, and parses the server's html response, noting http pipelining.
Explore how caching boosts web performance by using browser caching, CDN caching, and proxy caching, with cache-control, ETag, and Last-Modified headers to reduce latency and server load.
Learn how cross-origin resource sharing uses http headers and pre-flight requests to securely manage access across different origins, including access-control-allow-origin, access-control-allow-methods, and access-control-allow-headers.
Troubleshoot and debug http requests with a systematic approach using browser dev tools, status codes, headers, and payloads to diagnose server and client errors, network, and security issues.
Discover what a url is and how it acts as the address to web resources. Compare absolute and relative urls and how browsers fetch data via a path.
Explore the structure of a url, from the scheme and authority to domain, path, parameters, and the fragment, and how each part directs you to the resource.
Learn how url encoding converts non-ascii characters into percent-encoded formats with a percent sign and two hex digits, including spaces replaced by plus signs, so urls transmit safely.
Learn how http sessions use cookies and cryptography to maintain client state, ensure confidentiality, integrity, and authenticity, and manage bandwidth with cookie size and compression.
Explore how WebSockets enable real-time, bidirectional communication over a single long-lived HTTP connection, delivering low latency updates for chat, gaming, finance, and collaboration.
Discover how https uses an ssl certificate and tls to encrypt data, provide authentication, and protect information, with secure sites identified by the url and lock icon.
Understand what an internet protocol address is, how it identifies a host and locates it on a network, and how ip headers enable http routing with ipv4 or ipv6.
Explore how Fiddler, a proxy server, captures and debugs http and https traffic, letting you inspect requests, responses, headers, and saved sessions on your local machine.
Learn to capture and analyze http traffic with Wireshark, comparing it to Fiddler, and observe requests, responses, and protocol details on Windows or Mac.
Take the course quiz featuring multiple choice questions to actively recall what you learned, and share questions or feedback to improve the course.
Hypertext Transfer Protocol (HTTP) is the protocol programs use to communicate over the World Wide Web. HTTP is most famous for two-way conversation between clients (the web browsers) and web servers.
In this tutorial, we are going to dive in depth into all the aspects of the HTTP protocol in order for us to understand exactly how it works, what are its key components and also its entire workflow.
We will learn how to use tools such as Fiddler and Wireshark among others.
We will understand all the status codes that an HTTP Request might return and all the HTTP Request Methods.
You will also understand the structure of a URL, how you can encode information on it and what is its role in this protocol.
Lastly, we will see the differences between HTTP and HTTPs, and see what improvement the second one brings.
I will be adding more lectures / supplementary materials on the course as it goes by.
This tutorial is for anyone who wants to understand HTTP and the underlying architecture of the Web.
No programming experience is required, but technical writers with programming experience who want to know more about the HTTP Protocol will still find it useful.
Thanks for reading my introduction! This is about YOUR time and making the most of it! Good luck to you and hope to see you in the course! Alex!