Sobes.tech
Senior

Dobře, co přesně se změnilo v samotném požadavku?

sobes.tech AI

Odpověď od AI

Pokud jde o změny v samotném HTTP požadavku v Go, obvykle se mohou týkat:

  • Přidání nebo změny hlaviček (například Authorization, Content-Type).
  • Použití kontextu (http.NewRequestWithContext) pro podporu zrušení nebo časového limitu.
  • Změny metody požadavku (GET, POST, PUT atd.).
  • Změny těla požadavku (například přidání JSON nebo formuláře).

Příklad změny požadavku s přidáním kontextu a hlavičky:

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()

Konkrétní změny závisí na úkolu, ale obvykle zlepšují kontrolu nad požadavkem, přidávají potřebné hlavičky a správně spravují dobu běhu.