Junior — Middle
Czy można przesyłać dane binarne przez protokół HTTP/1.1?
sobes.tech AI
Odpowiedź od AI
Tak, za pomocą protokołu HTTP/1.1 można przesyłać dane binarne. HTTP nie ogranicza typu przesyłanych danych — ciało żądania i odpowiedzi może zawierać dowolne bajty. Aby poprawnie przesłać dane binarne, zwykle wskazuje się odpowiedni nagłówek Content-Type, na przykład application/octet-stream lub konkretny typ MIME pliku (np. image/png).
Przykład przesyłania danych binarnych w Go:
resp, err := http.Get("https://example.com/image.png")
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
// Odczytujemy dane binarne z ciała odpowiedzi
data, err := io.ReadAll(resp.Body)
if err != nil {
log.Fatal(err)
}
// data zawiera binarną zawartość pliku
W związku z tym, HTTP/1.1 w pełni obsługuje przesyłanie danych binarnych bez dodatkowego kodowania.