CouchDB - dołączanie plików
Dołączanie plików przy użyciu cURL
Możesz załączać pliki do CouchDB tak jak e-maile. Plik zawiera metadane, takie jak nazwa, i typ MIME oraz liczbę bajtów, które zawiera załącznik. Aby załączyć pliki do dokumentu, musisz wysłać żądanie PUT do serwera. Poniżej znajduje się składnia dołączania plików do dokumentu -
$ 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"
Żądanie ma różne opcje, które wyjaśniono poniżej.
--data-binary@ - Ta opcja mówi cURL, aby wczytywał zawartość pliku do treści żądania HTTP.
-H - Ta opcja służy do podania typu zawartości pliku, który zamierzamy przesłać.
Przykład
Załączmy plik o nazwie boy.jpg, do dokumentu o identyfikatorze 001, w bazie danych o nazwie my_databasewysyłając żądanie PUT do CouchDB. Wcześniej musisz pobrać dane dokumentu o identyfikatorze001 aby uzyskać prąd rev id, jak pokazano poniżej.
$ curl -X GET http://127.0.0.1:5984/my_database/001
{
"_id": "001",
"_rev": "1-967a00dff5e02add41819138abb3284d"
}
Teraz używając _rev wartość, wyślij żądanie PUT do serwera CouchDB, jak pokazano poniżej.
$ 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"
Weryfikacja
Aby sprawdzić, czy załącznik został przesłany, pobierz zawartość dokumentu, jak pokazano poniżej
$ 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
}
}
}
Dołączanie plików za pomocą Futon
Prześlij załącznik
Korzystając z tej opcji, możesz przesłać nowy załącznik, taki jak plik, obraz lub dokument, do bazy danych. Aby to zrobić, kliknijUpload Attachmentprzycisk. Pojawi się okno dialogowe, w którym możesz wybrać plik do przesłania. Wybierz plik i kliknijUpload przycisk.
Przesłany plik zostanie wyświetlony w polu _attachments. Później możesz zobaczyć plik, klikając go.