Sobes.tech
Junior — Middle

Peut-on transmettre un fichier via une requête HTTP GET?

sobes.tech IA

Réponse de l'IA

Transférer un fichier via une requête HTTP GET est techniquement possible, mais fortement déconseillé et pratiquement jamais utilisé.

Raisons :

  • La méthode GET est destinée à obtenir des ressources, pas à transférer de grandes quantités de données.
  • Il y a une limite de longueur dans l'URL (où les paramètres GET sont passés), généralement autour de 2000 caractères.
  • Les fichiers sont généralement trop volumineux pour tenir dans l'URL.

La méthode correcte pour transférer un fichier est d'utiliser la méthode POST avec multipart/form-data, où le fichier est envoyé dans le corps de la requête.

Exemple de transfert de fichier via POST en Python avec requests :

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

Ainsi, pour transférer des fichiers, utilisez POST plutôt que GET.