HTTPcurlIntermediate~4h

HTTP & APIs

Read the exchange, not the guess

Almost every argument about a failing request is settled by six lines of text nobody read. This is the protocol itself, drilled until reading it is fast: what a repeat promises, what a code owes you, how long a copy lasts, and which rule the browser applied before it refused.

Modules
6
Drills
15
Build steps
3
Time
~4h

Walk out able to

Take an exchange you have never seen and say what happens next — a retry, a redirect, a cache hit, a refusal — and name the rule that decided it.

What you drill

01

The message on the wire

URLs, framing, and the part that never leaves the client.

02

Methods and status codes

What a repeat promises, and what a code owes you.

03

Headers and caching

Negotiation, freshness, revalidation, and Vary.

04

Why the browser blocked it

Origins, preflight, credentials, and the rule that broke.

The pitch

What you practise, and what you leave with

Not an artifact — a reading speed. Fifteen procedures that are each current or not, plus your own headers pulled out of a live server.

You will practise

  • URLs, framing, and where a message ends
  • Method contracts, redirects, status codes
  • Negotiation, freshness, revalidation, Vary
  • Origins, preflight, and CORS diagnosis

Afterwards you can

  • Say whether a timed-out request may be repeated
  • Name the header a status code owes you
  • Work out how long a cache may serve its copy
  • Name the CORS rule that blocked a call

Modules

6 modules, 27 items

Lessons explain one idea. Drills repeat it until it sticks. Build steps make something that exists afterwards.

  1. 1

    Read the exchange

    ~36 min

    Say what a browser actually sends, and where the reply stops.

    • LessonWhy read the raw exchange4 min
    • LessonWrite out the request7 min
    • LessonFind where the reply ends7 min
    • DrillTake a URL apart8 min
    • DrillSay where the message ends10 min
  2. 2

    What the method promises

    ~20 min

    Decide whether a repeat is safe, and which request a redirect actually asks for.

    • DrillDecide if a repeat is safe10 min
    • DrillFollow the redirect10 min
  3. 3

    Answer with the right code

    ~30 min

    Choose the code a case needs, name what it owes, decide what a client does next.

    • DrillPick the code the case needs11 min
    • DrillName what the code owes10 min
    • DrillDecide what the client does next9 min
  4. 4

    Let the headers decide

    ~21 min

    Find the line that settles a question, and work out which representation wins.

    • DrillName the header that settles it9 min
    • DrillServe what they asked for12 min
  5. 5

    Fresh, stale, or ask again

    ~48 min

    Run a cache’s whole decision: the right copy, how long it lasts, and what to ask.

    • LessonName a cache’s three answers6 min
    • LessonWork out how long a copy lasts7 min
    • DrillDecide fresh or stale12 min
    • DrillRun the revalidation12 min
    • DrillKey the cache by Vary11 min
  6. 6

    Why the browser blocked it

    ~1h

    Compare origins, predict a preflight, and name the rule that blocked a call.

    • DrillSay whether they share an origin7 min
    • DrillSay whether it preflights11 min
    • DrillFind the rule that blocked it13 min
    • Build stepPull a response head of your own5 min
    • Build stepAsk again with what you hold5 min
    • Build stepWear a browser’s Origin header5 min
    • LessonDiagnose the invoice that moved5 min
    • LessonDiagnose a refusal with a bad code5 min
    • LessonDiagnose a copy in two caches5 min
    • LessonDiagnose a call that works signed out6 min

Every answer is already in the headers.

The first item is free. ~4h of focused work, at your own pace.

Intermediate~4h6 modules