--- title: PUT slug: Web/HTTP/Methods/PUT tags: - HTTP - Método HTTP - Petición translation_of: Web/HTTP/Methods/PUT ---
La petición HTTP PUT crea un nuevo elemento o reemplaza una representación del elemento de destino con los datos de la petición.
La diferencia entre el método PUT
y el método {{HTTPMethod("POST")}} es que PUT
es un método idempotente: llamarlo una o más veces de forma sucesiva tiene el mismo efecto (sin efectos secundarios), mientras que una sucesión de peticiones POST
idénticas pueden tener efectos adicionales, como envíar una orden varias veces.
Petición con cuerpo | Sí |
---|---|
Respuesta (correcta) con cuerpo | No |
{{Glossary("Seguro")}} | No |
{{Glossary("Idempotente")}} | Yes |
{{Glossary("Cacheable")}} | No |
Permitido en HTML forms | No |
PUT /nuevo.html HTTP/1.1
PUT /nuevo.html HTTP/1.1 Host: ejemplo.com Content-type: text/html Content-length: 16 <p>Nuevo Archivo</p>
Si el elemento de destino no existe y la petición PUT
lo crea de forma satisfactoria, entonces el servidor debe informar al usuario enviando una respuesta {{HTTPStatus("201")}} (Created
) .
HTTP/1.1 201 Created Content-Location: /nuevo.html
Si el elemento existe actualmente y es modificado de forma satisfactoria, entonces el servidor de origen debe enviar una respuesta {{HTTPStatus("200")}} (OK
) o una respuesta {{HTTPStatus("204")}} (No Content
) para indicar que la modificación del elemento se ha realizado sin problemas.
HTTP/1.1 204 No Content Content-Location: /existente.html
Specification | Title |
---|---|
{{RFC("7231", "PUT", "4.3.4")}} | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
{{Compat("http.methods.PUT")}}