We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

Learn the HTTP Protocol in Go

Build HTTP yourself so requests, responses, headers, and status codes stop feeling like magic.

What you'll learn in this Go course

The web is built on HTTP, and there's no better way to understand how something works than to implement it yourself. In this course, we'll learn the nitty-gritty details of the HTTP/1.1 protocol, and as we do so we'll actually build our own HTTP server from scratch in Go. By the end, you'll have a deep understanding of how web transport works.

Chapter List

1
HTTP Streams
Learn how to read and process a stream of bytes as they arrive.
2
TCP
Learn how TCP streams data reliably and how it compares to UDP.
3
Requests
Learn how HTTP requests work and how data is sent over the web.
4
Request Lines
Learn how to parse HTTP request lines from a stream of data.
5
HTTP Headers
Learn how HTTP headers are structured, parsed, and handled.
6
HTTP Body
Learn how to read and process the body of an HTTP request.
7
HTTP Responses
Learn how an HTTP server constructs and sends responses.
8
Chunked Encoding
Learn how HTTP chunked transfer encoding streams data in segments
9
Binary Data
Learn how HTTP handles binary data and different protocol versions.

Join 6,765 students in the Learn the HTTP Protocol in Go course

Read reviews of their learning experiences

The hardest Go course I've ever done, but I learnt a TON about HTTP

(3/5)
Francois Schoeman profile image

Francois Schoeman

South Africa

Incredible course but close to end really got harder and ı lost my mind and start learning nvim. Thanks!

(5/5)
çetin erdem profile image

çetin erdem

Dubai

I mean, really good course. If you want to understand low level HTTP and look under the hood, then this is the course for you.

(5/5)
duckshed  profile image

duckshed

California

pretty fun. Recommend 10/10.

(5/5)
Lourenço  profile image

Lourenço

Portugal

I've learnt quite a lot, and that's all I ask for

(4/5)
Emma Papi profile image

Emma Papi

Italy

very hands on and difficult course

(5/5)
Alec Dvorak profile image

Alec Dvorak

Granite City, IL

It was an amazing first time end-to-end project. It was great to see my http-server performs some responses after I building it myself!!

(5/5)
Renato Vasquez profile image

Renato Vasquez

Ecuador

the learning experience was really great, i understand the http protocal better than ever.

(5/5)
Pratham Khanal profile image

Pratham Khanal

Nepal

Particularly harder than other Go classes in Boot.dev. I felt ambivalent between feeling improved and feeling miserable. Prolly it's my skill issue. I think I can write 40 percent on my own without any guidance. (This is the part I felt worse) But, at the same time I now can implement struct, interfaces, using byte buffer to catch streaming data until it is done, using bytes.Index to find the registered nurse, and slide the window a bit to read more parts. (This is the part I felt improved).

(5/5)
Harim Yoo profile image

Harim Yoo

South Korea

Showing 1-9 of 89

or view more reviews

Mediocrity doesn't cut it anymore

The only way to become a great developer is to write a lot of code

Avoid tutorial hell

by writing a ton of code

Stay motivated with

a game-like curriculum

Build portfolio projects

to prove your skills

Delve deeper

into foundational concepts

Learn flexibly online

without interrupting your life

For 1% the price of college

to minimize your financial risk

Frequently asked Questions

Got questions? We've got answers

Yes! It's free to create an account and start learning. You'll get all the immersive and interactive features for free for a few chapters. After that, if you still haven't paid for a membership, you'll be in read-only (content only) mode.