Servicio que se implementan en el paso-4

Los Servicios CRUD del recurso Book son los mismos que en el paso anterior. La diferencia está en la representación detallada de Book que ahora incluye la colección de sus reviews.

Representación básica de Review

El subrecurso review no tiene una representación detallada porque no tiene ninguna relación con otros recursos.

{
id: '' /*Tipo Long*/,
name: '' /*Tipo String*/,
source: '' /*Tipo String*/,
description: '' /*Tipo String*/
}

Ejemplo representación de review

{
    "id": 123,
    "description": "un relato terrorífico",
    "name": "Mi nueva review",
    "source": "NY Times"
}

Representación detallada de Book

Le hemos agregado la colección de sus reviews.

{
id: '' /*Tipo Long*/,
name: '' /*Tipo String*/,
isbn: '' /*Tipo String*/,
image: '' /*Tipo String*/,
description: '' /*Tipo String*/,
publishingdate: '' /*Tipo Date*/,
editorial: '' /*Tipo representacion básica de Editorial*/
reviews: /*Tipo Colección de representaciones básicas de Review*/

}

Ejemplo JSON de una representación Book

{ "id": 123, "description": "Jorge Fondebrider traza un mundo fantástico con mapas de la geografía real y de sus mitologías, observando a los hombres lobo que han vivido en la imaginación de Europa y América.", "image": "https://static.iris.net.co/arcadia/upload/images/2017/7/31/64899_1.jpg", "isbn": "930330149-8", "name": "Historia de los hombres lobo", "publishingdate": "2000-08-20T00:00:00-05:00", "editorial": { "id": 100, "name": "Oveja Negra" }, "reviews": [{ id": 123, "description": "un relato terrorífico", "name": "Mi nueva review", "source": "NY Times" }, { id": 456, "description": "un libro para no perderse", "name": "review", "source": "Universidad de los Andes" }] }

Por ejemplo:

`GET books/{bookid}

Retorna una colección de objetos book en representación detallada de book.

Los Servicios nuevos en este paso están relacionados con la colección de reviews de un book books/{bookid}/reviews

GET books/{bookid}/reviews

Retorna una colección de objetos review, en representación básica, asociados con un objeto libro cuyo identificador es bookid.

Parámetros

Nombre Ubicación Descripción Requerido Esquema
bookid Path bookid del objeto book del cual se va consultar sus reviews Integer
Respuesta
Código Descripción Cuerpo
200 OK Colección de objetos review en Representación básica de review
404 No existe un objeto book con el bookid solicitado Mensaje de error

GET books/{bookid}/reviews/{reviewsid}

Retorna el objeto review con identificador reviewsid, en representación detallada, asociado con el objeto libro bookid.

Parámetros

Nombre Ubicación Descripción Requerido Esquema
bookid Path bookid del objeto book del cual se va consultar sus reviews Integer
reviewsid Path reviewsid del objeto review que se va a consultar Integer

Respuesta

Código Descripción Cuerpo
200 OK Objeto review en Representación básica de review
404 No existe un objeto book con el bookid solicitado Mensaje de error
404 No existe un objeto review con el reviewid asociado con un book bookid Mensaje de error

POST books/{bookid}/reviews/{reviewsid}

Agrega a la colección de reviews del book con identificador bookid un objeto review con identificador reviewsid.

Parámetros

Nombre Ubicación Descripción Requerido Esquema
bookid Path bookid del objeto book del cual se va a agregar un review Integer
reviewsid Path reviewsid del objeto review que se va a agregar a la colección de reviews de la book Integer

Respuesta

Código Descripción Cuerpo
200 OK Se agregó el review a la colección
404 No existe un objeto book con el bookid solicitado Mensaje de error
404 No existe un objeto review con el reviewid dado Mensaje de error

PUT books/{bookid}/reviews

Remplaza la colección de objetos review asociada con un objeto libro cuyo identificado es bookid.

Parámetros

Nombre Ubicación Descripción Requerido Esquema
booksid Path ID del objeto Editorial cuya colección será reemplazada Integer
body body Colección de objetos review en Representación básica de review

Respuesta

Código Descripción Cuerpo
200 Se remplazó la colección Colección de objetos review
404 No existe un objeto book con el bookid dado Mensaje de error
404 No existe alguno de los objetos review en la colección pasada por parámetro. Mensaje de error

DELETE books/{booksid}/reviews/{reviewsid}

Remueve un objeto review de la colección en un objeto libro.

Parámetros

Nombre Ubicación Descripción Requerido Esquema
bookid Path bookid del objeto book del cual se va a borrar un review Integer
reviewsid Path reviewsid del objeto review que se va a borrar de la colección de reviews del book Integer

Respuesta

Código Descripción Cuerpo
200 Objeto removido N/A
404 No existe un objeto book con el bookid solicitado Mensaje de error
404 No existe un objeto review con el reviewid asociado con un book bookid Mensaje de error

results matching ""

    No results matching ""