Especialmente para la mayoría de los navegadores que no lo admiten, ¿hay algo aparte de estrictos estándares de cumplimiento que justifique el tiempo de desarrollo adicional?¿cuál es la ventaja de usar put y delete en lugar de simplemente get y post
Respuesta
Si desarrolla su aplicación web solo para el navegador, debe ir con la publicación y obtener.
Pero, p. REST-API debería/podría hacer uso de los métodos de poner y eliminar. Por lo tanto, podría definir mejor qué acción desea ejecutar en recursos especiales. http://en.wikipedia.org/wiki/Representational_State_Transfer
¿Qué hay de las aplicaciones web que utilizan scripts del lado del cliente para comunicarse con el servidor a través de servicios web? –
Sí, tienes razón. Pongo, por ejemplo antes de REST-API porque fue el primer ejemplo en el que pensé. Hay varias razones para poner/eliminar métodos. Los servicios web son una buena palabra de moda. :) – TooAngel
Hay un artículo muy interesante sobre este tema aquí: http://www.artima.com/lejava/articles/why_put_and_delete.html
un ligero extracto:
PUT y DELETE se encuentran en el medio entre GET y POST. La diferencia entre PUT o DELETE y POST es que PUT y DELETE son idempotentes, mientras que POST no lo es. PUT y DELETE se pueden repetir si es necesario. Supongamos que intenta subir una nueva página a un sitio. Supongamos que quiere crear una página nueva al http://www.example.com/foo.html, por lo que escribe su contenido y lo PONE en esa URL. El servidor crea esa página en esa URL que usted proporciona. Ahora, supongamos que por alguna razón su conexión de red se cae. No está seguro, ¿la solicitud fue aprobada o no? Tal vez la red es lenta. Quizás hubo un problema con el servidor proxy. Por lo tanto, está perfectamente bien intentarlo de nuevo, o de nuevo, tantas veces como desee. Debido a que PONER el mismo documento en la misma URL diez veces no será diferente de ponerlo una vez. Lo mismo es cierto para DELETE. Puedes BORRAR algo diez veces, y eso es lo mismo que borrarlo una vez.
Como dice ese artículo, sin embargo, los navegadores realmente no soportan poner y eliminar. ¿Hay alguna razón para ir y emular a través de la publicación en lugar de simplemente usar la publicación? –
Es posible que los navegadores no admitan el envío y la eliminación, lo que no significa que los servidores no lo manejen (donde importa la idempotencia). Ahora que más desarrolladores están aprovechando tecnologías como AJAX, se está convirtiendo en un problema menor que no puede usarlas en formularios HTML. –
O para decirlo de otra manera: los navegadores * do * los admiten, solo los formularios HTML no. Sin embargo, hay muchas otras maneras en que un navegador puede enviar datos que solo a través de formularios HTML. ECMAScript es uno, Flash es uno, Java, Silverlight, lo que sea. –
- 1. ¿Por qué usar HTTP PUT y DELETE métodos en lugar de POST?
- 2. ¿Cómo consumir REST en C# incluyendo PUT, POST y DELETE?
- 3. Rails POST, PUT, GET
- 4. ¿Por qué necesitamos algo más que HTTP GET, PUT, POST?
- 5. RESTful PUT y DELETE y firewalls
- 6. Backbone.save la POST en lugar de PUT
- 7. ¿Cuál es la razón detrás de usar def y defn en lugar de simplemente definir?
- 8. ¿JQuery AJAX funciona en navegadores modernos con PUT y DELETE?
- 9. ¿Cuál es la diferencia entre el cifrado GET y POST?
- 10. ¿Debo usar POST o DELETE verbo en jQuery.ajax() la función
- 11. solicitud POST y PUT AFNetworking
- 12. GET y POST en cakephp
- 13. ¿Cómo iniciar una solicitud GET/POST/PUT/DELETE y el tipo de solicitud de juez en PHP?
- 14. ¿Cuál es la ventaja de usar arrayWithCapacity en lugar de usar array?
- 15. ¿Cuál es la forma menos fea de forzar las actualizaciones de Backbone.sync para usar POST en lugar de PUT?
- 16. Rails 3 link_to generator for: post,: put, &: delete?
- 17. CORS soporte para PUT y DELETE con ASP.NET Web API
- 18. estancamientos Python multiprocessing.Queue en PUT y GET
- 19. GET y POST en la misma página?
- 20. ¿Qué llamadas REST PUT/POST/DELETE deben devolver por convención?
- 21. ¿Cómo puedo emular PUT/DELETE para Rails y GWT?
- 22. nginx proxy_pass en función de si el método de solicitud es POST, PUT o DELETE
- 23. ¿Hay alguna razón para no usar HTTP PUT y DELETE en una aplicación web?
- 24. ¿Qué es el rendimiento ?, y ¿cuál es la ventaja de usar el rendimiento en asp.net?
- 25. ¿Hay constantes en el marco .NET para los diferentes tipos de métodos web (GET, PUT, POST, DELETE, HEAD)?
- 26. ¿Cuál es la ventaja de usar un ObjectId en lugar de un String simple?
- 27. ¿Hay alguna manera de usar GET y POST juntos?
- 28. ¿Cuál es la ventaja de usar filter_has_var() sobre isset()
- 29. ¿Cuál es la ventaja de usar Python Virtualbox API?
- 30. ¿Cuál es la ventaja de usar varbinary sobre varchar aquí?
+1 por no llamarlo REST – skaffman