6 versión de la api de rest, 7 operaciones asíncronas frente a síncronas, 8 recurso de tarea – HP OneView Manual del usuario

Página 63: 9 tratamiento de errores, 10 control de concurrencia mediante etags, Versión de la api de rest, Operaciones asíncronas frente a síncronas, Recurso de tarea, Tratamiento de errores, Control de concurrencia mediante etags

Advertising
background image

5.6 Versión de la API de REST

Se necesita un encabezado X-API-Version para realizar una operación de la API de REST.
Este encabezado de versión corresponde a la versión de la API de REST del software que se está
ejecutando en el dispositivo. Para determinar la versión de la API de REST correcta, ejecute
/rest/version

. Esta operación GET no requiere un encabezado X-API-Version. Si se están

ejecutando varios dispositivos en su entorno, es necesario determinar la versión de la API de REST
que requiere cada dispositivo.

El encabezado X-API-Version para esta versión de HP OneView siempre debe ser 3
(X-API-Version:3).

5.7 Operaciones asíncronas frente a síncronas

Una tarea síncrona devuelve una respuesta después de la operación de la API de REST. Por
ejemplo, POST /rest/server-profiles devuelve un perfil de servidor que acaba de crear
en el cuerpo de la respuesta. Una tarea asíncrona, como la creación de una copia de seguridad
del dispositivo, devuelve el URI de un modelo de recursos TaskResource. Puede utilizar el URI
del modelo de recursos TaskResource para ver el estado actual de la operación.

5.8 Recurso de tarea

Cuando se realiza una operación asíncrona de la API de REST, se devuelve el estado HTTP 202
Accepted

, y se devuelve el URI de un modelo de recursos TaskResource en el encabezado

Location

de la respuesta.

A continuación, puede realizar una operación GET con el URI del modelo TaskResource para
sondear el estado de la operación asíncrona. El modelo TaskResource también contiene el
nombre y el URI del recurso que se ve afectado por la tarea en el atributo associatedResource.

Ejemplo de creación de una copia de seguridad del dispositivo

1.

Crear una copia de seguridad del dispositivo.

/rest/backups

En la respuesta se devuelve el URI de un modelo TaskResource en el encabezado Location.

2.

Compruebe el estado de la copia de seguridad mediante el URI del modelo TaskResource devuelto en el paso 1.

/rest/tasks/{id}

3.

Cuando la tarea alcance el estado Completed, utilice el URI de associatedResource en el modelo
TaskResource

para descargar el archivo de copia de seguridad.

GET {associatedResource URI}

5.9 Tratamiento de errores

Si se produce un error durante una operación de la API de REST, se devuelve un error 4xx (lado
del cliente) o 5xx (dispositivo) junto con un mensaje de error (modelo de recursos ErrorMessage).
El mensaje de error contiene una descripción y puede contener acciones recomendadas para
corregir el error.

Una operación POST correcta de la API de REST devuelve el recurso que se acaba de crear
(operación síncrona) o un URI TaskResource en el encabezado Location (operación asíncrona).

5.10 Control de concurrencia mediante etags

El cliente utiliza etags para comprobar la versión del modelo de recursos. Esto evita que el cliente
pueda modificar (PUT) una versión del modelo de recursos que no está actualizada. Por ejemplo,
si un cliente realiza una operación GET en un perfil de servidor y recibe una etag en el encabezado
de la respuesta, modifica el perfil de servidor y, a continuación, actualiza (PUT) el modelo de

5.6 Versión de la API de REST

63

Advertising