Pregunta

¿Cómo implementar el soporte de copiar y pegar de una manera REST?

Vamos a decir que tengo los recursos librería. Y los libros en cada tienda

http://mydomain.com/rest/book-stores/1
http://mydomain.com/rest/book-stores/1/books/12

necesito el cliente para poder invocar pasta de copia de un libro a otro almacén.

aplicación de las siguientes:

PUT http://mydomain.com/rest/books/1/copy-paste

Parece muy RPC similares. ¿Tiene alguna sugerencia de cómo puede esta operación puede modelar de una manera REST?

¿Fue útil?

Otros consejos

Esto es sólo un problema si sus recursos son organizados para imitar un sistema jerárquico. Al igual que un sistema de archivos.

Yo prefiero recursos no jerárquicas. El "camino" a un archivo que acaba de ser una propiedad del archivo. Para copiar y pegar, hay dos opciones.

  1. Si realmente quiere otro "camino" de referencia, añadir otra entrada de la propiedad "camino". El mismo archivo exacto es "en" ambos "carpetas".

  2. Si necesita una nueva versión del archivo, que se bifurcan eficazmente los cambios a partir de entonces, crear un nuevo recurso (URI diferente) con una propiedad "camino" diferente.

  3. Para mover, solo cambia la propiedad "camino".

Si debe insistir en jerárquica, simplemente imitar la forma de un sistema de archivos hace copiar y pegar y moverse.

La copia es fácil. Un GET para el recurso para copiar.

Para pegar, un POST, porque va a crear un nuevo recurso, un nuevo URI.

Si necesita hacer un movimiento, es probable que tenga que eliminar el viejo recurso.

Si lo desea, puede especificar una ubicación en la solicitud de eliminación, lo que permite el servidor para redirigir a los usuarios que buscan el recurso movido en su antigua ubicación.

Me gustaría tenerlo de manera que el usuario ejecuta comando PUT para ejecutar la acción.

Así que algo como una variable en los datos del formulario es correcta contiene la acción a realizar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top