Junior — Middle
Jak działa proces obsługi żądania HTTP w przeglądarce i co się dzieje po stronie klienta i serwera?
sobes.tech AI
Odpowiedź od AI
Gdy użytkownik wpisuje URL w przeglądarce i naciska Enter, następuje następujący proces:
-
Klient (przeglądarka):
- Rozwiązuje nazwę domeny na adres IP za pomocą DNS.
- Nawiązuje połączenie TCP z serwerem (zwykle na porcie 80 dla HTTP lub 443 dla HTTPS).
- Wysyła żądanie HTTP (GET, POST itp.) do serwera.
-
Serwer:
- Odbiera i przetwarza żądanie (np. przez serwer WWW lub aplikację backendową).
- Tworzy odpowiedź HTTP z potrzebnymi danymi (HTML, JSON, obrazy itp.).
- Wysyła odpowiedź z powrotem do klienta.
-
Klient:
- Odbiera odpowiedź, przetwarza ją (np. renderuje HTML, wykonuje JavaScript).
- Ładuje dodatkowe zasoby (CSS, JS, obrazy) w razie potrzeby.
Przykład w Go do obsługi żądania HTTP:
package main
import (
"fmt"
"net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Cześć, zapytałeś: %s", r.URL.Path)
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}
Ten kod uruchamia prosty serwer HTTP, który odpowiada na wszystkie żądania wiadomością zawierającą żądany ścieżkę.