Sobes.tech
Senior

Dobre, takže čo sa presne zmenilo v samotnej požiadavke?

sobes.tech AI

Odpoveď od AI

Ak ide o zmenah v samem HTTP zahtevku v Go, se običajno lahko nanašajo na:

  • Dodajanje ali spreminjanje glave (npr. Authorization, Content-Type).
  • Uporaba konteksta (http.NewRequestWithContext) za podporo prekinitvi ali časovnemu omejitvi.
  • Spremembe metode zahtevka (GET, POST, PUT itd.).
  • Spremembe v telesu zahtevka (npr. dodajanje JSON ali obrazca).

Primer spremembe zahtevka z dodajanjem konteksta in glave:

ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()

req, err := http.NewRequestWithContext(ctx, "POST", "https://api.example.com/send", bytes.NewBuffer(jsonData))
if err != nil {
    log.Fatal(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer token")

resp, err := http.DefaultClient.Do(req)
if err != nil {
    log.Fatal(err)
}
defer resp.Body.Close()

Konkretne spremembe so odvisne od naloge, vendar običajno izboljšajo nadzor nad zahtevkom, dodajo potrebne glave in pravilno upravljajo čas izvajanja.