CouchDB - Прикрепление файлов

Прикрепление файлов с помощью cURL

Вы можете прикреплять файлы к CouchDB как к электронной почте. Файл содержит метаданные, такие как имя, и включает его MIME-тип и количество байтов, которые содержит вложение. Чтобы прикрепить файлы к документу, вам необходимо отправить запрос 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 читать содержимое файла в теле HTTP-запроса.

  • -H - Эта опция используется для указания типа содержимого файла, который мы собираемся загрузить.

пример

Прикрепим файл с именем boy.jpg, в документ с id 001, в базе данных с именем my_databaseотправив запрос PUT в CouchDB. Перед этим вы должны получить данные документа с идентификатором001 получить его текущий rev id, как показано ниже.

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

Теперь используя _rev значение, отправьте запрос PUT на сервер CouchDB, как показано ниже.

$ 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"

Проверка

Чтобы проверить, загружено ли вложение, загрузите содержимое документа, как показано ниже:

$ 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

Загрузить вложение

Используя эту опцию, вы можете загрузить новое вложение, такое как файл, изображение или документ, в базу данных. Для этого нажмите наUpload Attachmentкнопка. Появится диалоговое окно, в котором вы можете выбрать файл для загрузки. Выберите файл и нажмите наUpload кнопка.

Загруженный файл будет отображаться в поле _attachments. Позже вы сможете увидеть файл, щелкнув по нему.