Sobes.tech
Senior

Je možné použiť štruktúru pre parametre HTTP požiadavky?

sobes.tech AI

Odpoveď od AI

Áno, v jazyku Go môžete použiť štruktúru na parametre HTTP požiadavky, najmä pri práci s frameworkmi alebo knižnicami, ktoré podporujú automatické viazanie (binding) parametrov požiadavky na polia štruktúry.

Napríklad, ak máte štruktúru s tagmi url alebo form, môžete automaticky analyzovať parametre GET alebo POST do tejto štruktúry:

type Params struct {
    UserID   string `url:"user_id"`
    Page     int    `url:"page"`
}

func handler(w http.ResponseWriter, r *http.Request) {
    var p Params
    // Použitím, napríklad, github.com/gorilla/schema na dekódovanie
    decoder := schema.NewDecoder()
    err := decoder.Decode(&p, r.URL.Query())
    if err != nil {
        http.Error(w, err.Error(), http.StatusBadRequest)
        return
    }
    // Teraz p obsahuje parametre požiadavky
}

Týmto spôsobom štruktúra pomáha pohodlne a typovo bezpečne pracovať s parametrami HTTP požiadavky.