Sobes.tech
Junior — Middle

Hoe werkt het proces van het verwerken van HTTP-verzoeken in de browser en wat gebeurt er aan de client- en serverzijde?

sobes.tech AI

Antwoord van AI

Wanneer een gebruiker een URL in de browser invoert en op Enter drukt, gebeurt het volgende:

  1. Client (browser):

    • Resolutieert de domeinnaam naar een IP-adres via DNS.
    • Maakt een TCP-verbinding met de server (meestal via poort 80 voor HTTP of 443 voor HTTPS).
    • Stuurt een HTTP-verzoek (GET, POST, etc.) naar de server.
  2. Server:

    • Ontvangt en verwerkt het verzoek (bijvoorbeeld via een webserver of backend-toepassing).
    • Vormt een HTTP-antwoorde met de benodigde gegevens (HTML, JSON, afbeeldingen, etc.).
    • Stuurt het antwoord terug naar de client.
  3. Client:

    • Ontvangt het antwoord, verwerkt het (bijvoorbeeld HTML renderen, JavaScript uitvoeren).
    • Laadt aanvullende resources (CSS, JS, afbeeldingen) indien nodig.

Voorbeeld in Go voor het verwerken van een HTTP-verzoek:

package main

import (
    "fmt"
    "net/http"
)

func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hallo, je hebt aangevraagd: %s", r.URL.Path)
}

func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}

Deze code start een eenvoudige HTTP-server die op alle verzoeken reageert met een bericht dat het aangevraagde pad bevat.