La tarea: Tengo varios recursos que deben actualizarse en una llamada HTTP.Buscando un enfoque RESTful para actualizar múltiples recursos con el mismo conjunto de campos
El tipo de recurso, el campo y el valor para actualizar son los mismos para todos los recursos.
Ejemplo: tienen un conjunto de autos por sus ID, necesitan actualizar el "estado" de todos los autos a "vendido".
clásico enfoque reparador: solicitud de uso de URL como algo PUT/coches con el cuerpo como JSON [{id: 1, estado: vendido}, {id: 2, Estado: vendido}, ... ]
Sin embargo, esto parece ser una exageración: demasiadas veces para poner estado: vendido
busca de un modo REST (me refiero a la forma en que está tan cerca de protocolo de reposo "estándar" como sea posible) para enviar el estado : vendido solo una vez para todos los automóviles junto con la lista de identificadores de automóviles para actualizar. Esto es lo que haría:
PUT/coches Con JSON {ids = [1,2, ...], estado: vendido}, pero no estoy seguro de si esto es realmente el enfoque REST .
¿Alguna idea?
también como un beneficio adicional: Me gustaría ser capaz de evitar JSON para pequeño número de coches simplemente la creación de una dirección URL con parámetros algo como esto:?
PUT/identificadores de coches = 1,2 , 3 & estado = vendido
¿Es esto lo suficientemente RESTANTE?
"siempre y cuando sea fácilmente descifrable por el destinatario" - bueno, podría tener algo como ** POST/cars/update? Ids = 1,2,3 & status = sold ** y es lo más simple que alguien podría conseguir. ¿Pero es realmente RESTful? – Nikolay
No, ya que está usando variables GET para cambiar los datos en el servidor, en lugar de solo "OBTENERLO". http://ajaxpatterns.org/RESTful_Service#RESTful_Principles proporciona una mejor información sobre los estándares generalmente aceptados. – Death