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. Позже вы сможете увидеть файл, щелкнув по нему.