7 votes

Que signifie 100-continue dans la requête PUT ?

J'ai vu Expect : 100-continue dans une requête PUT (téléchargement d'un fichier), qu'est-ce que cela signifie ?

15voto

Will Hartung Points 57465

Ce qui est censé se passer, c'est que vous êtes censé envoyer les en-têtes de requête avec un :

Expect: 100-continue

l'en-tête. Ensuite, après avoir envoyé les en-têtes, mais avant d'envoyer la charge utile, vous devez vérifier si vous obtenez la réponse 100 ou une réponse 417. Si vous obtenez la réponse 100, vous pouvez continuer à envoyer la charge utile. Dans le cas contraire, vous devez vous arrêter.

L'idée est que lorsque vous vous apprêtez à envoyer un fichier de 10 Go, cela donne au serveur l'occasion de dire "Attendez, cow-boy" et vous pouvez alors gérer le processus de manière plus élégante que si le serveur se contentait de fermer la prise sur vous.

Le fait que vous ayez reçu une réponse de 100, alors que vous ne vous y attendiez pas, indique que vous avez probablement reçu à la fois la réponse de 100 et celle de 200 (ou autre). Le 100 vous a été envoyé après l'envoi des en-têtes, puis la réponse finale lorsque la requête a été terminée.

Le fait que vous n'y ayez pas prêté attention est vraiment un détail.

Mais dans l'idéal, à l'avenir, votre traitement pourra prendre en compte la réponse appropriée à une demande en cours de route.

Si vous n'avez PAS envoyé l'en-tête Expect, le serveur n'aurait pas dû vous envoyer les 100, puisque vous ne lui avez pas dit que vous alliez les traiter. Si vous avez bien envoyé l'en-tête Expect, le 100 n'aurait pas dû vous surprendre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X