CouchDB - API HTTP

En utilisant les en-têtes de requête HTTP, vous pouvez communiquer avec CouchDB. Grâce à ces demandes, nous pouvons récupérer des données de la base de données, stocker des données dans la base de données sous la forme de documents, et nous pouvons afficher et formater les documents stockés dans une base de données.

Formats de requête HTTP

Tout en communiquant avec la base de données, nous utiliserons différents formats de requête tels que get, head, post, put, delete et copy. Pour toutes les opérations dans CouchDB, les données d'entrée et les structures de données de sortie seront sous la forme d'un objet JavaScript Object Notation (JSON).

Voici les différents formats de requête du protocole HTTP utilisés pour communiquer avec CouchDB.

  • GET- Ce format est utilisé pour obtenir un élément spécifique. Pour obtenir différents éléments, vous devez envoyer des modèles d'URL spécifiques. Dans CouchDB en utilisant cette requête GET, nous pouvons obtenir des éléments statiques, des documents de base de données et de configuration, et des informations statistiques sous la forme de documents JSON (dans la plupart des cas).

  • HEAD - La méthode HEAD est utilisée pour obtenir l'en-tête HTTP d'une requête GET sans le corps de la réponse.

  • POST- La demande de publication est utilisée pour télécharger des données. Dans CouchDB à l'aide de la requête POST, vous pouvez définir des valeurs, télécharger des documents, définir des valeurs de document et également démarrer certaines commandes d'administration.

  • PUT - En utilisant la demande PUT, vous pouvez créer de nouveaux objets, bases de données, documents, vues et documents de conception.

  • DELETE - À l'aide de la demande DELETE, vous pouvez supprimer des documents, des vues et des documents de conception.

  • COPY - En utilisant la méthode COPY, vous pouvez copier des documents et des objets.

En-têtes de requête HTTP

Les en-têtes HTTP doivent être fournis pour obtenir le bon format et le bon encodage. Lors de l'envoi de la requête au serveur CouchDB, vous pouvez envoyer des en-têtes de requête Http avec la requête. Voici les différents en-têtes de demande Http.

  • Content-type- Cet en-tête est utilisé pour spécifier le type de contenu des données que nous fournissons au serveur avec la requête. La plupart du temps, le type de contenu que nous envoyons avec la demande sera de type MIME ou JSON (application / json). L'utilisation de Content-type sur une demande est fortement recommandée.

  • Accept- Cet en-tête est utilisé pour spécifier le serveur, la liste des types de données que le client peut comprendre, afin que le serveur envoie sa réponse en utilisant ces types de données. En général, vous pouvez envoyer ici la liste des types de données MIME acceptés par le client, séparés par des deux points.

    Bien que l'utilisation d'Accepter dans les requêtes de CouchDB ne soit pas obligatoire, il est fortement recommandé de s'assurer que les données renvoyées peuvent être traitées par le client.

En-têtes de réponse

Ce sont les en-têtes de la réponse envoyée par le serveur. Ces en-têtes donnent des informations sur le contenu envoyé par le serveur en réponse.

  • Content-type- Cet en-tête spécifie le type MIME des données renvoyées par le serveur. Pour la plupart des demandes, le type MIME renvoyé est text / plain.

  • Cache-control- Cet en-tête suggère au client de traiter les informations envoyées par le serveur. CouchDB renvoie principalement le must-revalidate, ce qui indique que l'information doit être revalidée si possible.

  • Content-length - Cet en-tête renvoie la longueur du contenu envoyé par le serveur, en octets.

  • Etag - Cet en-tête est utilisé pour afficher la révision d'un document ou d'une vue.

Codes d'état

Voici la forme tabulaire du code d'état envoyé par l'en-tête http et sa description.

N ° Sr. Code d'état et description
1

200 − OK

Ce statut sera émis lorsqu'une demande est terminée avec succès.

2

201 − Created

Ce statut sera émis lors de la création d'un document.

3

202 − Accepted

Ce statut sera émis lorsqu'une demande est acceptée.

4

404 − Not Found

Cet état sera émis lorsque le serveur ne pourra pas trouver le contenu demandé.

5

405 − Resource Not Allowed

Cet état est émis lorsque le type de requête HTTP utilisé n'est pas valide.

6

409 − Conflict

Cet état est émis chaque fois qu'il y a un conflit de mise à jour.

sept

415 − Bad Content Type

Cet état indique que le type de contenu demandé n'est pas pris en charge par le serveur.

8

500 − Internal Server Error

Cet état est émis chaque fois que les données envoyées dans la demande sont invalides.

Chemins d'URL HTTP

Il existe certains chemins d'URL à l'aide desquels vous pouvez interagir directement avec la base de données. Voici le format tabulaire de ces chemins d'URL.

N ° Sr. URL et opération
1

PUT /db

Cette URL est utilisée pour créer une nouvelle base de données.

2

GET /db

Cette URL est utilisée pour obtenir les informations sur la base de données existante.

3

PUT /db/document

Cette url est utilisée pour créer un document / mettre à jour un document existant.

4

GET /db/document

Cette URL est utilisée pour récupérer le document.

5

DELETE /db/document

Cette URL est utilisée pour supprimer le document spécifié de la base de données spécifiée.

6

GET /db/_design/design-doc

Cette URL est utilisée pour obtenir la définition d'un document de conception.

sept

GET /db/_design/designdoc/_view/view-name

Cette url est utilisée pour accéder à la vue, nom de la vue à partir du document de conception à partir de la base de données spécifiée.