Sobes.tech
Junior — Middle

Vysvetlite hlavnú funkciu a princípy fungovania HTTP servera implementovaného v jazyku Go

sobes.tech AI

Odpoveď od AI

HTTP server v jazyku Go je navrhnut tak, aby spracovával prichádzajúce HTTP požiadavky a odosielal príslušné HTTP odpovede klientom (prehliadače, API klienti atď.). Základný princíp spočíva v tom, že server počúva na určitej porte, prijíma požiadavky, spracováva ich pomocou handlerov a vracia výsledok.

V Go sa na vytváranie HTTP serverov používa balík net/http. Hlavné komponenty sú:

  • Handler — funkcia alebo objekt, ktorý implementuje rozhranie http.Handler a je zodpovedný za spracovanie požiadavky.
  • ListenAndServe — funkcia, ktorá spustí server a začne počúvať na zadanom adrese.

Príklad jednoduchého HTTP servera v Go:

package main

import (
    "fmt"
    "net/http"
)

func helloHandler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Ahoj, svet!")
}

func main() {
    http.HandleFunc("/", helloHandler) // Registrujeme handler pre cestu "/"
    http.ListenAndServe(":8080", nil)  // Spúšťame server na porte 8080
}

Takto je HTTP server v Go ľahko realizovateľný, efektívny a dobre škálovateľný vďaka vstavanému podpore pre súbežnosť pomocou gorutín.