Skip to main content
ONTAP Automation
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Variables d'entrée contrôlant une requête API

Contributeurs

Vous pouvez contrôler le traitement d'un appel API à l'aide de paramètres et de variables définis dans la requête HTTP.

Méthodes HTTP

Les méthodes HTTP prises en charge par l'API REST de ONTAP sont répertoriées dans le tableau suivant.

Remarque Toutes les méthodes HTTP ne sont pas disponibles sur chacun des terminaux REST. De plus, LE PATCH et LA SUPPRESSION peuvent être utilisés sur une collection. Pour plus d'informations, reportez-vous à la section Object références and Access.
Méthode HTTP Description

OBTENEZ

Récupère les propriétés d'un objet sur une instance ou une collection de ressources.

POST

Crée une nouvelle instance de ressource en fonction de l'entrée fournie.

CORRECTIF

Met à jour une instance de ressource existante en fonction de l'entrée fournie.

SUPPRIMER

Supprime une instance de ressource existante.

TÊTE

Émet une requête GET, mais renvoie uniquement les en-têtes HTTP.

OPTIONS

Déterminez les méthodes HTTP prises en charge sur un point final spécifique.

Variables de chemin

Le chemin du point de terminaison utilisé avec chaque appel de l'API REST peut inclure divers identificateurs. Chaque ID correspond à une instance de ressource spécifique. Exemples : ID de cluster et ID de SVM.

En-têtes de demande

Vous devez inclure plusieurs en-têtes dans la requête HTTP.

Type de contenu

Si le corps de la demande inclut JSON, cet en-tête doit être défini sur application/json.

Accepter

Cette barre de coupe doit être réglée sur application/hal+json. S'il est réglé sur application/json Aucun des liens HAL ne sera retourné, sauf un lien nécessaire pour récupérer le prochain lot d'enregistrements. Si l'en-tête est autre chose en dehors de ces deux valeurs, la valeur par défaut de l' content-type en-tête dans la réponse sera application/hal+json.

Autorisation

L'authentification de base doit être définie avec le nom d'utilisateur et le mot de passe codés en tant que chaîne base64. Par exemple :

Authorization: Basic YWRtaW46cGV0ZXJzb24=.

Corps de la demande

Le contenu du corps de la demande varie en fonction de l'appel spécifique. Le corps de requête HTTP comprend l'un des éléments suivants :

  • Objet JSON avec variables d'entrée

  • Objet JSON vide

Filtrage d'objets

Lors de l'émission d'un appel API avec la méthode GET, vous pouvez limiter ou filtrer les objets renvoyés en fonction de n'importe quel attribut à l'aide d'un paramètre de requête.

Analyse et interprétation des paramètres de requête

Un ensemble d'un ou de plusieurs paramètres peut être ajouté à la chaîne d'URL commençant après ? caractère. Si plusieurs paramètres sont fournis, les paramètres de requête sont divisés en fonction du & caractère. Chaque clé et chaque valeur du paramètre sont divisées au niveau du = caractère.

Par exemple, vous pouvez spécifier une valeur exacte à associer à l'aide du signe égal :

<field>=<value>

Pour une requête plus complexe, l'opérateur supplémentaire est placé après le signe égal. Par exemple, pour sélectionner l'ensemble d'objets en fonction d'un champ spécifique supérieur ou égal à une valeur donnée, la requête sera :

<field>=>=<value>

Opérateurs de filtrage

En plus des exemples fournis ci-dessus, des opérateurs supplémentaires sont disponibles pour renvoyer des objets sur une plage de valeurs. Le tableau ci-dessous présente un récapitulatif des opérateurs de filtrage pris en charge par l'API REST ONTAP.

Remarque Les champs qui ne sont pas définis sont généralement exclus des requêtes correspondantes.

Opérateur

Description

=

Égal à

<

Inférieur à

>

Supérieur à

<=

Inférieur ou égal à

>=

Supérieur ou égal à

!

Différent de

*

Un caractère générique gourmand

Vous pouvez également renvoyer une collection d'objets en fonction de la définition ou non d'un champ spécifique à l'aide du null mot clé ou sa négation !null dans le cadre de la requête.

Exemples de flux de travail

Certains workflows de l'API REST de ce site en sont quelques exemples.

Demande de champs d'objet spécifiques

Par défaut, l'émission d'un appel API à l'aide DE GET renvoie uniquement les attributs qui identifient de manière unique l'objet ou les objets, avec un auto-lien HAL. Cet ensemble minimal de champs sert de clé pour chaque objet et varie en fonction du type d'objet. Vous pouvez sélectionner d'autres propriétés d'objet à l'aide de l' fields paramètre de requête des manières suivantes :

  • Champs communs ou standard

    Spécifiez fields=*` pour récupérer les champs d'objet les plus couramment utilisés. Ces champs sont généralement conservés dans la mémoire du serveur local ou nécessitent peu de traitement pour accéder à. Ce sont les mêmes propriétés que pour un objet après avoir utilisé GET avec une clé de chemin d'URL (UUID).

  • Tous les champs

    Spécifiez fields=** pour récupérer tous les champs d'objet, y compris ceux nécessitant un traitement serveur supplémentaire pour accéder.

  • Sélection de champ personnalisée

    Utiliser fields=<field_name> pour spécifier le champ exact souhaité. Lorsque vous demandez plusieurs champs, les valeurs doivent être séparées par des virgules sans espaces.

    Astuce Vous devez toujours identifier les champs spécifiques que vous souhaitez. Vous ne devez récupérer que l'ensemble des champs communs ou tous les champs, le cas échéant. Les champs sont classés comme communs et renvoyés à l'aide de fields=*, Est déterminée par NetApp en fonction de l'analyse interne des performances. La classification d'un champ pourrait changer dans les versions futures.

Tri des objets dans le jeu de sortie

Les enregistrements d'une collection de ressources sont renvoyés dans l'ordre par défaut défini par l'objet. Vous pouvez modifier la commande à l'aide de la order_by paramètre de requête avec le nom de champ et la direction de tri comme suit :

order_by=<field name> asc|desc

Par exemple, vous pouvez trier le champ de type par ordre décroissant, suivi d'un ID par ordre croissant :

order_by=type desc, id asc

Notez ce qui suit :

  • Si vous spécifiez un champ de tri mais ne fournissez pas de direction, les valeurs sont triées par ordre croissant.

  • Lorsque vous ajoutez plusieurs paramètres, vous devez séparer les champs par une virgule.

Pagination lors de la récupération d'objets dans une collection

Lors de l'émission d'un appel API à l'aide DE GET pour accéder à une collection d'objets du même type, ONTAP tente de renvoyer le plus grand nombre possible d'objets en fonction de deux contraintes. Vous pouvez contrôler chacune de ces contraintes à l'aide de paramètres de requête supplémentaires sur la demande. La première contrainte atteinte pour une demande GET spécifique met fin à la demande et limite donc le nombre d'enregistrements renvoyés.

Remarque Si une demande se termine avant de passer à l'itération de tous les objets, la réponse contient le lien nécessaire pour récupérer le lot d'enregistrements suivant.
Limitation du nombre d'objets

Par défaut, ONTAP renvoie un maximum de 10,000 objets pour une requête GET. Vous pouvez modifier cette limite à l'aide du max_records paramètre de requête. Par exemple :

max_records=20

Le nombre d'objets effectivement renvoyés peut être inférieur au maximum en vigueur, en fonction de la contrainte de temps associée ainsi que du nombre total d'objets dans le système.

Limitation du temps utilisé pour récupérer les objets

Par défaut, ONTAP renvoie le plus grand nombre d'objets possible dans le temps imparti pour la demande GET. Le délai par défaut est de 15 secondes. Vous pouvez modifier cette limite à l'aide du return_timeout paramètre de requête. Par exemple :

return_timeout=5

Le nombre d'objets effectivement renvoyés peut être inférieur au maximum en vigueur, en fonction de la contrainte associée sur le nombre d'objets ainsi que du nombre total d'objets dans le système.

Rétrécir le jeu de résultats

Si nécessaire, vous pouvez combiner ces deux paramètres avec des paramètres de requête supplémentaires pour affiner le jeu de résultats. Par exemple, le suivant renvoie jusqu'à 10 événements ems générés après le temps spécifié :

time=> 2018-04-04T15:41:29.140265Z&max_records=10

Vous pouvez émettre plusieurs demandes de page via les objets. Chaque appel d'API suivant doit utiliser une nouvelle valeur de temps basée sur le dernier événement du dernier jeu de résultats.

Propriétés de taille

Les valeurs d'entrée utilisées avec certains appels API ainsi que certains paramètres de requête sont numériques. Au lieu de fournir un entier en octets, vous pouvez éventuellement utiliser un suffixe comme indiqué dans le tableau suivant.

Suffixe Description

KO

Ko kilo-octets (1024 octets) ou kibioctets

MO

Mo mégaoctets (Ko x 1024 octets) ou mébioctets

GO

Go gigaoctets (Mo x 1024 octets) ou gibioctets

TO

To Teroctets (Go x 1024 octets) ou tébioctets

PO

PB PB po (TB x 1024 octets) ou pemap/

Informations associées