📜  CouchDB-HTTP API

📅  最后修改于: 2020-12-02 06:26:40             🧑  作者: Mango


使用HTTP请求标头,可以与CouchDB通信。通过这些请求,我们可以从数据库中检索数据,以文档形式将数据存储到数据库中,并且可以查看和格式化存储在数据库中的文档。

HTTP请求格式

与数据库通信时,我们将使用不同的请求格式,例如get,head,post,put,delete和copy。对于CouchDB中的所有操作,输入数据和输出数据结构将采用JavaScript Object Notation(JSON)对象的形式。

以下是用于与CouchDB通信的HTTP协议的不同请求格式。

  • GET-此格式用于获取特定项目。要获得不同的商品,您必须发送特定的网址格式。在使用此GET请求的CouchDB中,我们可以以JSON文档的形式(在大多数情况下)获取静态项,数据库文档和配置以及统计信息。

  • HEAD -HEAD方法用于获取没有请求主体的GET请求的HTTP标头。

  • POST-发布请求用于上传数据。在使用POST请求的CouchDB中,您可以设置值,上传文档,设置文档值,还可以启动某些管理命令。

  • PUT-使用PUT请求,您可以创建新的对象,数据库,文档,视图和设计文档。

  • 删除-使用DELETE请求,您可以删除文档,视图和设计文档。

  • COPY-使用COPY方法,可以复制文档和对象。

HTTP请求头

应该提供HTTP标头以获得正确的格式和编码。在将请求发送到CouchDB服务器时,您可以将Http请求标头与请求一起发送。以下是不同的Http请求标头。

  • 内容类型-此标头用于指定我们与请求一起提供给服务器的数据的内容类型。通常,与请求一起发送的内容的类型将是MIME类型或JSON(application / json)。强烈建议在请求中使用Content-type。

  • 接受-此标头用于指定服务器,客户端可以理解的数据类型列表,以便服务器将使用这些数据类型发送其响应。通常,您可以在此处发送客户端接受的MIME数据类型列表,以冒号分隔。

    虽然不需要在CouchDB的查询中使用Accept,但是强烈建议确保客户端可以处理返回的数据。

响应标题

这些是服务器发送的响应的标头。这些标头提供有关服务器作为响应发送的内容的信息。

  • 内容类型-此标头指定服务器返回的数据的MIME类型。对于大多数请求,返回的MIME类型为text / plain。

  • 缓存控制-此标头建议客户端处理服务器发送的信息。 CouchDB通常返回必须重新验证的信息,这表明该信息应尽可能进行重新验证。

  • Content-length-此标头返回服务器发送的内容的长度(以字节为单位)。

  • Etag-此标头用于显示文档或视图的修订。

状态码

以下是HTTP标头发送的状态代码的表格形式及其说明。

Sr.No. Status Code & Description
1

200 − OK

This status will be issued when a request completed successfully.

2

201 − Created

This status will be issued when a document is created.

3

202 − Accepted

This status will be issued when a request is accepted.

4

404 − Not Found

This status will be issued when the server is unable to find the requested content.

5

405 − Resource Not Allowed

This status is issued when the HTTP request type used is invalid.

6

409 − Conflict

This status is issued whenever there is any update conflict.

7

415 − Bad Content Type

This status indicated that the requested content type is not supported by the server.

8

500 − Internal Server Error

This status is issued whenever the data sent in the request is invalid.

HTTP URL路径

使用某些URL路径,您可以直接与数据库进行交互。以下是此类url路径的表格格式。

Sr.No. URL & Operation
1

PUT /db

This url is used to create a new database.

2

GET /db

This url is used to get the information about the existing database.

3

PUT /db/document

This url is used to create a document/update an existing document.

4

GET /db/document

This url is used to get the document.

5

DELETE /db/document

This url is used to delete the specified document from the specified database.

6

GET /db/_design/design-doc

This url is used to get the definition of a design document.

7

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

This url is used to access the view, view-name from the design document from the specified database.