CouchDB 附加文件
您可以像电子邮件一样将文件附加到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 - 此选项用于提及我们要上传的文件的内容类型。
例
让我们通过发送PUT请求到CouchDB,在名为my_database的数据库中将名为boy.jpg的文件附加到id为001的文档。 在此之前,您必须获取id为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附加文件
上传附件使用此选项,您可以将新的附件(如文件,图像或文档)上传到数据库。 为此,请点击上传附件按钮。 将出现一个对话框,您可以在其中选择要上传的文件。 选择文件,然后单击上传按钮。
上传的文件将在_attachments场显示。稍后,您可以通过点击它查看该文件。