CouchDB - API HTTP
Usando cabeçalhos de solicitação HTTP, você pode se comunicar com o CouchDB. Por meio dessas solicitações, podemos recuperar dados do banco de dados, armazenar dados no banco de dados na forma de documentos e podemos visualizar e formatar os documentos armazenados em um banco de dados.
Formatos de solicitação HTTP
Ao nos comunicarmos com o banco de dados, usaremos diferentes formatos de solicitação como get, head, post, put, delete e copy. Para todas as operações no CouchDB, os dados de entrada e as estruturas de dados de saída estarão na forma de objeto JavaScript Object Notation (JSON).
A seguir estão os diferentes formatos de solicitação de protocolo HTTP usados para se comunicar com o CouchDB.
GET- Este formato é usado para obter um item específico. Para obter itens diferentes, você deve enviar padrões de url específicos. No CouchDB, usando esta solicitação GET, podemos obter itens estáticos, documentos e configuração do banco de dados e informações estatísticas na forma de documentos JSON (na maioria dos casos).
HEAD - O método HEAD é usado para obter o cabeçalho HTTP de uma solicitação GET sem o corpo da resposta.
POST- A solicitação de postagem é usada para fazer upload de dados. No CouchDB usando a solicitação POST, você pode definir valores, fazer upload de documentos, definir valores de documentos e também pode iniciar certos comandos de administração.
PUT - Usando a solicitação PUT, você pode criar novos objetos, bancos de dados, documentos, visualizações e documentos de design.
DELETE - Usando a solicitação DELETE, você pode excluir documentos, visualizações e documentos de design.
COPY - Usando o método COPY, você pode copiar documentos e objetos.
Cabeçalhos de solicitação HTTP
Os cabeçalhos HTTP devem ser fornecidos para obter o formato e a codificação corretos. Ao enviar a solicitação ao servidor CouchDB, você pode enviar cabeçalhos de solicitação Http junto com a solicitação. A seguir estão os diferentes cabeçalhos de solicitação Http.
Content-type- Este cabeçalho é usado para especificar o tipo de conteúdo dos dados que fornecemos ao servidor junto com a solicitação. Em geral, o tipo de conteúdo que enviamos junto com a solicitação será do tipo MIME ou JSON (aplicativo / json). Usar o tipo de conteúdo em uma solicitação é altamente recomendado.
Accept- Este cabeçalho é usado para especificar o servidor, a lista de tipos de dados que o cliente pode entender, para que o servidor envie sua resposta usando esses tipos de dados. Geralmente aqui, você pode enviar a lista de tipos de dados MIME que o cliente aceita, separados por dois pontos.
Embora o uso de Aceitar em consultas do CouchDB não seja obrigatório, é altamente recomendável garantir que os dados retornados possam ser processados pelo cliente.
Cabeçalhos de resposta
Esses são os cabeçalhos da resposta enviada pelo servidor. Esses cabeçalhos fornecem informações sobre o conteúdo enviado pelo servidor como resposta.
Content-type- Este cabeçalho especifica o tipo MIME dos dados retornados pelo servidor. Para a maioria das solicitações, o tipo MIME retornado é texto / simples.
Cache-control- Este cabeçalho sugere ao cliente como tratar as informações enviadas pelo servidor. CouchDB retorna principalmente o must-revalidate, que indica que as informações devem ser revalidadas, se possível.
Content-length - Este cabeçalho retorna o comprimento do conteúdo enviado pelo servidor, em bytes.
Etag - Este cabeçalho é usado para mostrar a revisão de um documento ou visão.
Códigos de status
A seguir está a forma tabular do código de status enviado pelo cabeçalho http e sua descrição.
Sr. Não. | Código de status e descrição |
---|---|
1 | 200 − OK Este status será emitido quando uma solicitação for concluída com sucesso. |
2 | 201 − Created Este status será emitido quando um documento for criado. |
3 | 202 − Accepted Este status será emitido quando uma solicitação for aceita. |
4 | 404 − Not Found Este status será emitido quando o servidor não puder encontrar o conteúdo solicitado. |
5 | 405 − Resource Not Allowed Este status é emitido quando o tipo de solicitação HTTP usado é inválido. |
6 | 409 − Conflict Este status é emitido sempre que houver algum conflito de atualização. |
7 | 415 − Bad Content Type Este status indicou que o tipo de conteúdo solicitado não é compatível com o servidor. |
8 | 500 − Internal Server Error Este status é emitido sempre que os dados enviados na solicitação são inválidos. |
Caminhos de URL HTTP
Existem certos caminhos de url usando os quais você pode interagir diretamente com o banco de dados. A seguir está o formato tabular de tais caminhos de url.
Sr. Não. | URL e operação |
---|---|
1 | PUT /db Este url é usado para criar um novo banco de dados. |
2 | GET /db Este url é usado para obter as informações sobre o banco de dados existente. |
3 | PUT /db/document Este url é usado para criar um documento / atualizar um documento existente. |
4 | GET /db/document Este url é usado para obter o documento. |
5 | DELETE /db/document Este url é usado para excluir o documento especificado do banco de dados especificado. |
6 | GET /db/_design/design-doc Este url é usado para obter a definição de um documento de design. |
7 | GET /db/_design/designdoc/_view/view-name Este url é usado para acessar a visão, nome da visão do documento de design do banco de dados especificado. |