Junior — Middle
Ar galima perduoti dvejetainius duomenis per HTTP/1.1 protokolą?
sobes.tech AI
Atsakymas iš AI
Taip, naudojant HTTP/1.1 protokolą galima perduoti dvejetainius duomenis. HTTP neriboja perduodamų duomenų tipo: užklausos ir atsakymo kūnas gali turėti bet kokius baitus. Norint teisingai perduoti dvejetainius duomenis, dažnai nurodomas atitinkamas Content-Type antraštė, pavyzdžiui, application/octet-stream arba konkretus MIME tipas (pvz., image/png).
Pavyzdys, kaip perduoti dvejetainius duomenis Go kalba:
resp, err := http.Get("https://example.com/image.png")
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
// Skaityti dvejetainius duomenis iš atsakymo kūno
data, err := io.ReadAll(resp.Body)
if err != nil {
log.Fatal(err)
}
// data turi būti binarinio failo turinys
Todėl HTTP/1.1 visiškai palaiko dvejetainių duomenų perdavimą be papildomo kodavimo.