Sobes.tech
Junior — Middle

Lze přenést soubor přes HTTP GET požadavek?

sobes.tech AI

Odpověď od AI

Přenos souboru prostřednictvím požadavku HTTP GET je technicky možný, ale je velmi nedoporučený a prakticky se nepoužívá.

Důvody:

  • Metoda GET je určena k získávání zdrojů, nikoli k přenosu velkých objemů dat.
  • V URL (kde jsou předávány parametry GET) je omezení délky, obvykle kolem 2000 znaků.
  • Soubory jsou obvykle příliš velké na to, aby se vešly do URL.

Správný způsob přenosu souboru je použití metody POST s multipart/form-data, kde je soubor odeslán v těle požadavku.

Příklad přenosu souboru přes POST v Pythonu s requests:

import requests
files = {'file': open('example.txt', 'rb')}
response = requests.post('http://example.com/upload', files=files)
print(response.status_code)

Pro přenos souborů používejte POST místo GET.