CouchDB 附加文件

2018-06-16 19:08 更新

您可以像電子郵件一樣將文件附加到CouchDB。 該文件包含名稱等元數(shù)據(jù),包括其MIME類型和附件包含的字節(jié)數(shù)。 要將文件附加到文檔,您必須向服務(wù)器發(fā)送PUT請求。 以下是將文件附加到文檔的語法。

$ curl -vX PUT http://127.0.0.1:5984/database_name/database_id
/filename?rev=document rev_id --data-binary @filename -H "Content-Type:
type of the content"

該請求具有以下解釋的各種選項。
--data-binary @ - 此選項告訴cURL將文件的內(nèi)容讀入HTTP請求體。
-H - 此選項用于提及我們要上傳的文件的內(nèi)容類型。

讓我們通過發(fā)送PUT請求到CouchDB,在名為my_database的數(shù)據(jù)庫中將名為boy.jpg的文件附加到id為001的文檔。 在此之前,您必須獲取id為001的文檔的數(shù)據(jù),以獲取其當(dāng)前的rev id,如下所示。

$ curl -X GET http://127.0.0.1:5984/my_database/001
{
   "_id": "001",
   "_rev": "1-967a00dff5e02add41819138abb3284d"
}

現(xiàn)在使用_rev值,將PUT請求發(fā)送到CouchDB服務(wù)器,如下所示。

$ curl -vX PUT http://127.0.0.1:5984/my_database/001/boy.jpg?rev=1-
967a00dff5e02add41819138abb3284d --data-binary @boy.jpg -H "ContentType:
image/jpg"

驗(yàn)證

要驗(yàn)證附件是否上傳,提取文檔內(nèi)容如圖所示如下:

$ curl -X GET http://127.0.0.1:5984/my_database/001
{
   "_id": "001",
   "_rev": "2-4705a219cdcca7c72aac4f623f5c46a8",
   "_attachments": {
      "boy.jpg": {
         "content_type": "image/jpg",
         "revpos": 2,
         "digest": "md5-9Swz8jvmga5mfBIsmCxCtQ==",
         "length": 91408,
         "stub": true
      }
   }
}

使用Futon附加文件

上傳附件
使用此選項,您可以將新的附件(如文件,圖像或文檔)上傳到數(shù)據(jù)庫。 為此,請點(diǎn)擊上傳附件按鈕。 將出現(xiàn)一個對話框,您可以在其中選擇要上傳的文件。 選擇文件,然后單擊上傳按鈕。

上傳附件

上傳的文件將在_attachments場顯示。稍后,您可以通過點(diǎn)擊它查看該文件。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號