CouchDB - HTTP API



使用 HTTP 請求頭,您可以與 CouchDB 通訊。透過這些請求,我們可以從資料庫中檢索資料,以文件的形式將資料儲存到資料庫中,並且可以檢視和格式化儲存在資料庫中的文件。

HTTP 請求格式

在與資料庫通訊時,我們將使用不同的請求格式,如 get、head、post、put、delete 和 copy。對於 CouchDB 中的所有操作,輸入資料和輸出資料結構都將採用 JavaScript 物件表示法 (JSON) 物件的形式。

以下是用於與 CouchDB 通訊的 HTTP 協議的不同請求格式。

  • GET - 此格式用於獲取特定專案。要獲取不同的專案,您必須傳送特定的 URL 模式。在 CouchDB 中,使用此 GET 請求,我們可以獲取靜態專案、資料庫文件和配置,以及以 JSON 文件(在大多數情況下)形式的統計資訊。

  • HEAD - HEAD 方法用於獲取 GET 請求的 HTTP 標頭,而無需響應正文。

  • POST - Post 請求用於上傳資料。在 CouchDB 中,使用 POST 請求,您可以設定值、上傳文件、設定文件值,還可以啟動某些管理命令。

  • PUT - 使用 PUT 請求,您可以建立新的物件、資料庫、文件、檢視和設計文件。

  • DELETE - 使用 DELETE 請求,您可以刪除文件、檢視和設計文件。

  • COPY - 使用 COPY 方法,您可以複製文件和物件。

HTTP 請求頭

應提供 HTTP 標頭以獲取正確的格式和編碼。在向 CouchDB 伺服器傳送請求時,您可以將 Http 請求標頭與請求一起傳送。以下是不同的 Http 請求標頭。

  • Content-type - 此標頭用於指定我們與請求一起提供給伺服器的資料的內容型別。大多數情況下,我們與請求一起傳送的內容型別將是 MIME 型別或 JSON (application/json)。強烈建議在請求中使用 Content-type。

  • Accept - 此標頭用於指定伺服器,客戶端可以理解的資料型別列表,以便伺服器使用這些資料型別傳送其響應。通常,您可以在此處傳送客戶端接受的 MIME 資料型別列表,並以冒號分隔。

    雖然在 CouchDB 的查詢中不需要使用 Accept,但強烈建議使用它以確保返回的資料可以由客戶端處理。

響應頭

這些是伺服器傳送的響應的標頭。這些標頭提供有關伺服器作為響應傳送的內容的資訊。

  • Content-type - 此標頭指定伺服器返回的資料的 MIME 型別。對於大多數請求,返回的 MIME 型別為 text/plain。

  • Cache-control - 此標頭建議客戶端如何處理伺服器傳送的資訊。CouchDB 大多數情況下返回 must-revalidate,這表示應在可能的情況下重新驗證資訊。

  • Content-length - 此標頭返回伺服器傳送的內容的長度(以位元組為單位)。

  • Etag - 此標頭用於顯示文件或檢視的修訂版。

狀態碼

以下是 http 標頭髮送的狀態碼及其描述的表格形式。

序號 狀態碼 & 描述
1

200 - OK

當請求成功完成時,將發出此狀態。

2

201 - Created

建立文件時將發出此狀態。

3

202 - Accepted

接受請求時將發出此狀態。

4

404 - Not Found

當伺服器無法找到請求的內容時,將發出此狀態。

5

405 - Resource Not Allowed

當使用的 HTTP 請求型別無效時,將發出此狀態。

6

409 - Conflict

每當發生任何更新衝突時,將發出此狀態。

7

415 - Bad Content Type

此狀態表示伺服器不支援請求的內容型別。

8

500 - Internal Server Error

每當請求中傳送的資料無效時,將發出此狀態。

HTTP URL 路徑

可以使用某些 url 路徑直接與資料庫互動。以下是此類 url 路徑的表格格式。

序號 URL & 操作
1

PUT /db

此 url 用於建立新的資料庫。

2

GET /db

此 url 用於獲取有關現有資料庫的資訊。

3

PUT /db/document

此 url 用於建立文件/更新現有文件。

4

GET /db/document

此 url 用於獲取文件。

5

DELETE /db/document

此 url 用於從指定的資料庫中刪除指定的文件。

6

GET /db/_design/design-doc

此 url 用於獲取設計文件的定義。

7

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

此 url 用於從指定資料庫中的設計文件訪問檢視 view-name。

廣告

© . All rights reserved.