Ils semblent tous deux à l'envoi de données vers le serveur à l'intérieur du corps, ce qui les rend différents?
Réponses
Trop de publicités?HTTP:
METTRE met un fichier ou d'une ressource à une URI, et plus exactement à l'URI. Si il y a déjà un fichier ou d'une ressource à l'URI, METTRE remplace ce fichier ou d'une ressource. Si il n'existe pas de fichier ou une ressource, il y a, METTRE en crée un.
HTTP 1.1 RFC emplacement pour METTRE
HTTP POST:
POST envoie des données à un URI spécifiques et attend de la ressource à l'URI pour traiter la demande. Le serveur web à ce point peut déterminer quoi faire avec les données dans le contexte de la ressource spécifiée.
L'officiel HTTP RFC spécifie POSTE à:
- L'Annotation des ressources existantes;
- Poster un message dans un forum, groupe de discussion, liste de diffusion, ou similaire d'un groupe d'articles;
- Fournir un bloc de données, telles que le fait de soumettre une forme, à un processus de traitement des données;
- L'extension d'une base de données par le biais d'une opération d'ajout.
HTTP 1.1 RFC emplacement pour le POST
La différence entre le POST et le METTRE:
Le RFC explique lui-même la différence:
La différence fondamentale entre l' Requêtes POST et PUT se reflète dans les différents sens de l' URI de demande. L'URI dans une requête POST identifie la ressource de gérer l'entité incluse. Que des ressources pourraient être données à accepter processus, d'une passerelle à une autre protocole, ou d'une entité distincte qui accepte les annotations. En revanche, l' URI dans une requête PUT identifie l' entité jointe à la demande -- l'agent de l'utilisateur sait ce qu'URI est l'intention et le serveur ne DOIT PAS essayez d'appliquer de la demande pour certains d'autres ressources. Si le serveur désirs que la demande soit appliquée à un URI différent, il DOIT envoyer un 301 (redirection Permanente) intervention, l'agent utilisateur PEUT alors faire sa propre décision quant à savoir si ou de ne pas rediriger la demande.
En utilisant la bonne méthode, sans rapport avec le côté:
Un des avantages de REPOS ROA vs SAVON est que lors de l'utilisation de HTTP REPOS ROA, il encourage l'utilisation correcte des verbes HTTP/méthodes. Ainsi, par exemple, vous devez utiliser uniquement quand vous voulez pour créer une ressource à cet endroit précis. Et vous ne serait jamais utiliser GET pour créer ou modifier une ressource.
La sémantique.
un HTTP PUT est censé accepter le corps de la demande, puis le magasin à la ressource identifiée par l'URI.
Un HTTP POST est plus général. Il est censé lancer une action sur le serveur. Cette action pourrait être de stocker le corps de la requête à la ressource identifiée par l'URI, ou il pourrait être un URI différent, ou peut-être une action différente.
METTRE est comme un upload de fichier. Un mettre à un URI affecte exactement cet URI. Un POSTE à un URI pourrait avoir un quelconque effet.
Pour donner des exemples de REPOS de style de ressources:
"POST /livres" avec un tas de renseignements sur le livre peut créer un nouveau livre, et de répondre avec la nouvelle URL qui identifie le livre: "/livres/5".
"METTRE /books/5" serait de créer un nouveau livre avec l'id de 5, ou de remplacer le livre avec l'ID 5.
En non-ressource style, le courrier peut être utilisé pour à peu près tout ce qui a un effet secondaire. Une autre différence est que MIS de devrait être idempotent - plusieurs place des mêmes données vers la même URL doit être fine, wheras plusieurs Postes peut créer plusieurs objets ou quoi que ce soit de votre POST de l'action.
1) OBTENEZ:- Utilisé lorsque le client demande une ressource sur le serveur Web.
2) TÊTE:- Utilisé lorsque le client demande quelques informations sur une ressource, mais ne demande pas à la ressource elle-même.
3) APRÈS:- Utilisé lorsque le client envoie des informations ou des données sur le serveur par exemple, en remplissant un formulaire en ligne (c'est à dire Envoie une grande quantité de données complexes pour le Serveur Web).
4) METTRE:- Utilisé lorsque le client est l'envoi d'un document de remplacement ou téléchargement d'un nouveau document sur le serveur Web, en vertu de l'URL de la requête.
5) SUPPRIMER:- Utilisé lorsque le client essaie de supprimer un document à partir du serveur Web, identifiés par l'URL de la requête.
6) TRACE:- Utilisé lorsque le client demande à la disposition des proxys ou des serveurs intermédiaires évolution de la demande d'annoncer eux-mêmes.
7) OPTIONS:- Utilisé lorsque le client veut déterminer d'autres méthodes permettant de récupérer ou de traiter un document sur le serveur Web.
8) CONNEXION:- Utilisé lorsque le client veut établir un transparent de la connexion à un hôte distant, généralement pour faciliter SSL-communication cryptée (HTTPS) à travers un proxy HTTP.
METTRE est conçu comme une méthode de "téléchargement de" choses " à une URI, ou à l'écrasement de ce qui est déjà dans cet URI.
La POSTE, d'autre part, est une manière de soumettre des données LIÉES à un URI.
Reportez-vous à la RFC HTTP