web-dev-qa-db-fra.com

multipart / form-data vs application / octet-stream

Je crée un simple REST API pour télécharger des fichiers. À partir d'autres API, j'ai constaté qu'elles utilisent "multipart/form-data "type de contenu. Mais pour moi, cela ressemble à" application/octet-stream "est beaucoup plus simple.

Si je n'ai pas l'intention d'envoyer d'autres données de formulaire avec le fichier, y a-t-il une raison d'utiliser "multipart/form-data" et pas "application/octet-stream "?

38
levk

Bien que vous n'ayez pas l'intention d'envoyer d'autres données avec le fichier pour le moment, multipart/form-data vous donnerait la possibilité d'ajouter des données supplémentaires ultérieurement si cela est nécessaire (sans casser la compatibilité).

Aussi multipart/form-data permettrait d'accéder à l'API REST directement en soumettant un formulaire HTML (voir https://stackoverflow.com/a/4526286/69314 ).

Votre API peut cependant prendre en charge les deux types en utilisant l'en-tête du type de contenu du client pour les distinguer.

19
Stefan Kögl