HTTP

HTTP is the protocol under every page, image, script and fetch: the browser sends a request (method, URL, headers, maybe a body) and the server sends back a response (status, headers, maybe a body). That meaning hasn't changed since the 1990s. How it's carried has: first as lines of text, now as binary frames. Notes.

1. One request, three versions

The same request, reading a Rooms room, and its reply, as each version of HTTP carries them.




2. This page's requests

A page can't see HTTP's bytes, but the browser keeps a record of every request it made: which protocol, how the time was spent, how many bytes came over the network. Each button makes one request and adds a row.

The file is this repo's README.md, from the same server as this page.

Time: DNS connect TLS waiting for the server download

3. This page's response headers

The headers the server sent with this page, read with a HEAD request to the page's own URL. Same-origin, so the page may read them all.