2012-05-08 9 views
11

Así que tengo un sitio web que acepta un HTTP-PUT para un recurso en particular, por ejemplo. /contact que permitirá al consumidor actualizar un contacto, suponiendo que haya pasado la validación.Al actualizar un recurso, ¿qué código de estado HTTP se devuelve cuando la actualización se realiza correctamente?

Así que actualizo el registro, todo es genial ... y ahora tengo que devolver algo al consumidor.

¿Cuál es el código de estado HTTP que debería devolver?

Si esto fuera HTTP-POST (es decir, crear un nuevo recurso), devolvería un 201 Created y agregaría un atributo de encabezado Location.

Pero .. No puedo encontrar ninguna pista sobre qué hacer para una actualización.

Saludos :)

+0

Muy buena pregunta, parece que no hay un código HTTP estándar para esto, así que simplemente devolvería un 200 OK. –

Respuesta

17

200 es especialmente apropiado si está devolviendo una representación de la acción (aunque la "obra en proceso" pero que se acerca a la última llamada "HTTP bis" extrañamente no menciona PUT en its description of 200 OK).

Si no está devolviendo ningún tipo de representación, use 204 No Content para indicar al cliente que no necesita cambiar su "vista de documento" actual.

+0

¿Cuál es la representación de la acción? ¿Es una representación del recurso actualizado o es algo similar a "Blablabla actualizado con éxito" – rmoestl

+1

Una representación de la acción sería "blablabla correctamente actualizada", por lo general solo vale la pena si incluye a) detalles sobre lo que sucedió si es útil para los clientes pero especialmente b) enlaces a qué hacer a continuación – fumanchu

+0

Gracias por aclarar, @fumanchu. – rmoestl

5

200 es el código de estado apropiado asumir la venta sólo hizo una actualización y no creó un recurso.

Cuestiones relacionadas