[pyar] REST y ejecucion de metodos remotos!

Mariano Guerra luismarianoguerra en gmail.com
Jue Jul 8 13:24:24 ART 2010


2010/7/8 Pablo Codeiro <cutrix2k en gmail.com>:
> Mariano: Justamente lo que habia googleado + lo que habia visto en una
> charla del PyDay que hubo acá en cordoba, me informaba lo que Enrique Martin
> dice: se envian Get/Put/Post/Delete para modificar/agregar/etc los datos de
> una entidad. Por eso, no me quedaba en claro como utilizar REST para acceder
> a metodos que "no se que hacen"

si no sabes que hacen entonces tenes un problema en otro lado :P

> Justamente el ejemplo de pepita.vola() es lo que vos decis: un cambio de
> estado. No se si modifica, elimina o agrega "registros" a una entidad,
> talvez solo modifique una variable, o agregue un registro en una tabla
> "criaturas que estan volando", y la idea que ando buscando justamente es
> esa: abstraerme de lo que hace el metodo internamente.
> En este caso ¿Como podria usar REST para algo asi? (supongamos que estoy
> haciendo un mmorpg, hacer pepita.vola() seria algo valido).

me parece que hay distintas formas de referirse a lo mismo

podes ver la accion de realizar una compra como llamando a la accion
"comprar" o como agregar un nuevo pedido o producto a tu carrito

no me pongo taliban en que todas son acciones aplicadas sobre
recursos, podes tener algo como invocacion de metodos remotos, pero
eso deja de ser un servicio web y pasa a ser algo como RPC.

podrias hacer un post de un objeto accion en pepita

POST /user/pepita/action

{"type": "vola", "amount": "una bocha"}

no se, es lo que se me ocurre a mi.

es como la diferencia entre decirle a pepita que te de plata y meterle
la mano en el bolsillo a pepita, sacar la plata y meterle el vuelto de
nuevo. Hay que definir que es lo que le estas pidiendo y cuanto te
estas metiendo en las cosas internas del otro.

supongo que posteando acciones podria andar.

si queres ver un ejemplo de la vida real, mira como maneja las
solicitudes de replicacion couchdb

http://books.couchdb.org/relax/reference/replication

mira la api completa para darte una idea.



More information about the pyar mailing list