Examiner les codes de réponse communs

Effectué

La plupart des opérations de requête courantes avec Azure Cosmos DB for NoSQL consistent à créer, interroger ou gérer des documents de conteneur. Chaque demande retourne un code d’état HTTP sur l’état de l’opération. Ce code peut nous indiquer si l’opération a réussi. Ou le code nous indique que la demande a échoué et nous fournit un insight de ce qui a pu mal se passer. Dans cette section, nous allons passer en revue certains des codes d’état HTTP les plus courants renvoyés par les types de demande suivants :

  • Création d'un document
  • Liste des documents
  • Obtention d'un document
  • Remplacement d'un document
  • Corriger un document
  • Suppression d'un document
  • Interroger des documents

Codes d’État courants pour tous les types d’opérations

Bien que certains codes d’État comme 400, 403 et 404 soient partagés entre différents types d’opérations, leur description varie légèrement et ne figure pas dans ce tableau.

Code d’état Nom Type d’opération Description
200 Ok Liste, Obtenir, Remplacer, Corriger, Interroger L'opération a réussi.

Création d'un document

L’opération Créer un document crée un document dans une collection. Ses codes d'état sont les suivants :

Code d’état Type d’opération Description
201 Date de création L'opération a réussi.
400 Demande incorrecte Le corps au format JSON n'est pas valide.
403 Interdit Impossible d’effectuer l’opération, car la limite de stockage de la partition a été atteinte.
409 Conflit Le id fourni pour le nouveau document a été utilisé par un document existant.
413 Entité trop volumineuse La taille du document dans la demande a dépassé la taille de document autorisée.

Répertorier les documents sous la collection à l’aide de ReadFeed

ReadFeed peut être utilisé pour récupérer tous les documents, ou uniquement les modifications incrémentielles apportées aux documents dans la collection. Ses codes d'état sont les suivants :

Code d’état Type d’opération Description
400 Demande incorrecte Le remplacement défini dans x-ms-consistency-level est plus puissant que celui défini pendant la création du compte. Par exemple, si le niveau de cohérence est Session, le niveau de remplacement ne peut pas Strong ou Bounded.

Obtention d'un document

L’opération obtenir un document récupère un document par sa clé de partition et sa clé de document. Ses codes d'état sont les suivants :

Code d’état Type d’opération Description
304 Non modifié Le document demandé n’a pas été modifié depuis la valeur eTag spécifiée dans l’en-tête If-Match. Le service retourne un corps de réponse vide.
400 Demande incorrecte Le remplacement défini dans l'en-tête x-ms-consistency-level est plus puissant que celui défini pendant la création du compte. Par exemple, si le niveau de cohérence est Session, le niveau de remplacement ne peut pas Strong ou Bounded.
404 Introuvable Le document n'est plus une ressource, autrement dit le document a été supprimé.

Remplacement d'un document

L’opération de remplacement de document remplace l’intégralité du contenu d’un document. Ses codes d'état sont les suivants :

Code d’état Type d’opération Description
400 Demande incorrecte Le corps au format JSON n'est pas valide. Vérifiez qu'il ne manque pas d'accolades ou de guillemets.
404 Introuvable Le document n'existe plus, c'est-à-dire qu'il a été supprimé.
409 Conflit Le id fourni pour le nouveau document a été utilisé par un document existant.
413 Entité trop volumineuse La taille du document dans la demande a dépassé la taille de document autorisée.

Corriger un document

L’opération de document de correctif logiciel fait des mises à jour au niveau du chemin d’accès à des fichiers/propriétés spécifiques dans un document unique. Ses codes d'état sont les suivants :

Code d’état Type d’opération Description
400 Demande incorrecte Le corps au format JSON n'est pas valide.
412 Échec de la précondition La condition préalable spécifiée n’est pas remplie.

Supprimer le document

L’opération de suppression de document supprime un document existant dans une collection. Ses codes d'état sont les suivants :

Code d’état Type d’opération Description
204 Pas de contenu L'opération de suppression a réussi.
404 Introuvable Le document est introuvable.

Interroger des documents

Vous pouvez interroger les documents de la collection à l’aide des requêtes Azure Cosmos DB SQL. Ses codes d'état sont les suivants :

Code d’état Type d’opération Description
400 Demande incorrecte La demande a été spécifiée avec une syntaxe de SQL incorrecte, ou des en-têtes obligatoires sont manquants.

Autres codes d'état importants qu'une demande d'Azure Cosmos DB pourrait renvoyer

Certains codes d’état ayant échoué font également référence à des exceptions. Nous aborderons quelques-uns de ces codes d'état plus en détail dans les sections suivantes, mais voici quelques codes d'état plus courants à examiner :

Code d’état Type d’opération Description
408 Délai d’expiration de la demande L'opération ne s'est pas terminée dans le délai imparti. Ce code d'erreur est renvoyé quand une procédure stockée, un déclencheur ou un fichier UDF (dans une requête) n'est pas exécuté dans le délai d'exécution maximal imparti.
429 Trop de demandes La collection a dépassé la limite de débit provisionnée. Relancez la requête après expiration du délai de nouvelle tentative sur le serveur. Pour plus d’informations, voir unités de requête.
500 Erreur interne du serveur L’opération a échoué en raison d’une erreur de service inattendue. Contactez le support technique.
503 Service indisponible Impossible d’effectuer l’opération, car le service n’était pas disponible. Cette situation peut se produire en raison de problèmes de connectivité réseau ou de disponibilité de service. Il est possible de recommencer l’opération. Si le problème persiste, contactez le support.