2012-06-27 28 views
8

Soy nuevo en REST. Quiero saber cuándo usar los métodos get y cuándo usar los métodos de publicación. En el proceso de mi encuesta de literatura encontré este conocimiento.Diferencia entre el método Get y el método de publicación en comparación con HTTP y REST

En realidad cuando buscaba HTTP GET y POST métodos, leí que obtener la URL Encode duerma y post codifica la URL

Cuando busqué para el descanso métodos GET y POST, leí que el método de obtener se utiliza para recuperar los datos del servidor y el método de publicación es agregar algunos datos al servidor.

Pero también he leído que el descanso no es más que una convención para usar HTTP.

Así que siento que algunas cosas son contradictorias aquí. ¿Los métodos de HTTP son diferentes?

Por favor, aclare. También alguna sugerencia sobre cuándo utilizar métodos GET y POST son bienvenidos

de recursos de la que me dieron esta información:

https://www.ibm.com/developerworks/webservices/library/ws-ful/

http://www.cs.tut.fi/~jkorpela/forms/methods.html

+0

¿Se puede usar GET y POST con el mismo método? – Arti

Respuesta

11

GET se debe utilizar para recuperar un recurso. Esta operación debe ser idempotente, lo que significa que no debe cambiar ningún estado en el servidor.

POST se debe utilizar para agregar nueva información al servidor. Esto generalmente se realiza en una URL que representa un "contenedor" de recursos. El POST agregará un nuevo recurso a este contenedor.

PUT se debe utilizar para actualizar un recurso existente.

DELETE debe ser obvio.

Es posible disfrutar de la lectura de este: http://tomayko.com/writings/rest-to-my-wife

+1

Nitpicking: "idempotent" no significa "no cambia de estado". 'DELETE' cambia de estado, pero es idempotente. "No cambia el estado" se denomina "sin efectos secundarios". –

+0

De Wikipedia: Idempotence es la propiedad de ciertas operaciones en matemáticas y ciencias de la computación, que se pueden aplicar varias veces sin cambiar el resultado más allá de la aplicación inicial. [CITA FINAL]. Según esta definición, un DELETE fallará cuando se ejecute la segunda vez. –

+0

¿Podemos usar GET y POST en el mismo método? – Arti

0

La parte de su pregunta que no ha recibido ninguna atención hasta el momento, y que probablemente está causando algo de su confusión, es: "RESTO no es más que una convención para usa HTTP ". Que es una forma incorrecta de describir lo que REST es/hace en términos de usar HTTP para manipular el estado de una aplicación. Esto se conoce oficialmente como HATEOAS - http://en.wikipedia.org/wiki/HATEOAS y es prácticamente el corazón del concepto de servicios web RESTful.

Cuestiones relacionadas