Вы можете прикреплять файлы к CouchDB так же, как к электронной почте. Файл содержит метаданные типа name и включает его тип 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 — эта опция используется для указания типа содержимого файла, который мы собираемся загрузить.
—data-binary @ — эта опция указывает cURL читать содержимое файла в тело HTTP-запроса.
-H — эта опция используется для указания типа содержимого файла, который мы собираемся загрузить.
пример
Давайте прикрепим файл с именем boy.jpg к документу с идентификатором 001 в базе данных с именем my_database , отправив запрос PUT в CouchDB. Перед этим вы должны получить данные документа с идентификатором 001, чтобы получить его текущий идентификатор версии, как показано ниже.
$ 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
Загрузить вложение
Используя эту опцию, вы можете загрузить новое вложение, такое как файл, изображение или документ, в базу данных. Для этого нажмите кнопку Загрузить вложение . Появится диалоговое окно, где вы можете выбрать файл для загрузки. Выберите файл и нажмите кнопку « Загрузить» .
Загруженный файл будет отображаться в поле _attachments. Позже вы можете увидеть файл, нажав на него.