HTTP Request Formats:
To communicate with CouchDB different request formats of HTTP Protocol are used, including:
|GET||● To get static items.|
● To get statistical information in the form of JSON documents.
● To get database documents and configuration.
|HEAD||● To get the HTTP header of a GET request without the body of the response.|
|POST||● To set values.|
● To upload documents.
● To set document values.
● To start certain administration commands.
|PUT||● To create new Objects, Databases, Documents, Views and Design documents.|
|DELETE||● To delete Documents, Views and Design documents.|
|COPY||● To copy documents and objects.|
HTTP Request Headers:
To get the right format and encoding, sending HTTP request headers along with the request is a must while sending the request to the CouchDB server. There are mainly two types of HTTP request headers. These are:
- Used to specify the content type of the data to be sent to the server along with the request.
- The type of content sent is mostly MIME type or JSON (application/JSON).
- Highly recommended.
- Used to specify the list of data types that client can understand to the server.
- The server thus sends its response using the specified data types. A list of MIME data types, separated by colons can be sent.
- Using Accept in queries is not required in CouchDB.
- But to ensure that the data returned can be processed by the client, this request header is highly recommended.
HTTP Response Headers:
The HTTP response headers are used to get information about the content sent by the server as a response as they itself are a type of response sent by the server. There are mainly four types of HTTP Response headers. These are:
- Used to define the MIME type of the data sent by the server which is text/plain for most requests.
- Used to suggest the client about treating the information sent by the server.
- If must-revalidate is returned, then the information should be revalidated if possible.
- Used to retrieve the length of the content sent by the server.
- It retrieves the length in bytes.
- Used to display the revision for a document or a view.
Status Codes of HTTP Headers:
|200 – OK||Generated when a request completed successfully.|
|201 – Created||Generated when a document is created.|
|202 – Accepted||Generated when a request is accepted.|
|404 – Not Found||Issued when the server is unable to find the requested content.|
|405 – Resource Not Allowed||Issued when the http request type used is invalid.|
|409 – Conflict||Issued whenever there is any update conflict.|
|415 – Bad Content Type||To specify that the requested content type is not supported by the server.|
|500 – Internal Server Error||Issued whenever the invalid data is sent as request.|
HTTP URL paths to interact with database:
|PUT /db||To create a new database.|
|GET /db||To get the information about the existing database.|
|PUT/db/document||To create a document/update an existing document.|
|GET /db/document||To get a document from the specified database.|
|DELETE /db/document||To delete a document from the specified database.|
|GET/db/_design/design-doc||To get the definition of a design document.|
|GET /db/_design/designdoc/_view/view-name||To access the view, view-name of a design document.|