我想将内联附件与新文档一起存储。任何机构都可以提供Java脚本代码段来存储内联附件。并且在附加文件时有什么方法可以提供密钥。

提前致谢

最佳答案

首先,请阅读CouchDB attachments文档。

例如:


在文档my_doc
附加文件hello.html
内容为Hello, world


您使用base64对内容进行编码。 "Hello world""'SGVsbG8gd29ybGQ="

然后创建一个像这样的文档:

{ "_id": "my_doc",
, "_attachments":
  { "hello.html":
    { "content_type": "text/html"
    , "data": "'SGVsbG8gd29ybGQ="
    }
  }
}


唯一困难的部分是base64编码。我建议您使用CouchDB中包含的base64脚本。

<html>
  <head>
   <script src="/_utils/script/base64.js"></script>
  </head>
  <body>
   The Base64 of "Hello world" is:
   <script>
    var hello = "Hello world"
    var encoded = Base64.encode(hello)
    document.write(encoded)
   </script>

  <p>

  A document with this attachment is:<br>
  <script>
   var doc = { "_id":"my_doc" }

   doc._attachments = {}
   doc._attachments["hello.html"] = {}
   doc._attachments["hello.html"].content_type = "text/html"
   doc._attachments["hello.html"].data = Base64.encode("Hello world")

   document.write(JSON.stringify(doc))
  </script>
  </body>
</html>

关于javascript - 使用JavaScript在Couchdb中存储内联附件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9430876/

10-15 20:06