CouchDB - Đính kèm tệp

Đính kèm tệp bằng cURL

Bạn có thể đính kèm tệp vào CouchDB giống như email. Tệp chứa siêu dữ liệu như tên và bao gồm kiểu MIME của nó và số byte mà tệp đính kèm chứa. Để đính kèm tệp vào tài liệu, bạn phải gửi yêu cầu PUT đến máy chủ. Sau đây là cú pháp để đính kèm tệp vào tài liệu:

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

Yêu cầu có các tùy chọn khác nhau được giải thích bên dưới.

  • --data-binary@ - Tùy chọn này yêu cầu cURL đọc nội dung của tệp vào phần thân yêu cầu HTTP.

  • -H - Tùy chọn này được sử dụng để đề cập đến loại nội dung của tệp mà chúng tôi sẽ tải lên.

Thí dụ

Hãy để chúng tôi đính kèm một tệp có tên boy.jpg, vào tài liệu có id 001, trong cơ sở dữ liệu có tên my_databasebằng cách gửi yêu cầu PUT đến CouchDB. Trước đó, bạn phải tìm nạp dữ liệu của tài liệu với id001 để có được hiện tại của nó rev id như hình bên dưới.

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

Bây giờ sử dụng _rev giá trị, gửi yêu cầu PUT đến máy chủ CouchDB như hình dưới đây.

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

xác minh

Để xác minh xem tệp đính kèm có được tải lên hay không, hãy tìm nạp nội dung tài liệu như hình dưới đây−

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

Đính kèm tệp bằng Futon

tải tập tin đính kèm

Sử dụng tùy chọn này, bạn có thể tải tệp đính kèm mới như tệp, hình ảnh hoặc tài liệu lên cơ sở dữ liệu. Để làm như vậy, hãy nhấp vàoUpload Attachmentcái nút. Một hộp thoại sẽ xuất hiện để bạn có thể chọn tệp được tải lên. Chọn tệp và nhấp vàoUpload cái nút.

Tệp đã tải lên sẽ được hiển thị trong trường _attachments. Sau đó, bạn có thể xem tệp bằng cách nhấp vào nó.