可以用pouchdb存储图片吗

Can I use pouchdb to store images

我正在寻找一种简单的方法来处理移动应用中的 offline/online 情况。 pouchdb 似乎是与 cloudant 配对使用的一个有趣选项。但是用它来存储像图像这样的二进制数据是个好主意吗?或者是否有存储大小或任何其他限制?

PouchDB 支持文档附件,就像 CouchDB 一样。因此应该可以将本地文件附加到 PouchDB 数据库,然后将数据同步到远程 CouchDB/Cloudant 数据库。

这是离线优先存储的绝佳解决方案;您 运行 的存储限制取决于所使用的浏览器。 See PouchDB's FAQ page for the list of browsers and storage limits.

如果您担心数据库中的附件太多或太大会带来性能问题,您可以采用混合方法并使用附件来最初保存附加对象,但使用脚本服务器端来获取附件,复制到对象存储,然后修改文档以包含附件新位置的 URL。然后您可以删除附件本身以减少存储空间 space.

存储图像或文件

<input type="file">

js

var input = document.querySelector('input');
input.addEventListener('change', function () {
  var file = input.files[0]; // file is a Blob

  db.put({
    _id: 'mydoc',
    _attachments: {
      filename: {
        type: file.type,
        data: file
      }
    }
  }).catch(function (err) {
    console.log(err);
  });
});

http://bl.ocks.org/ntwcklng/f57b03c15e91c25e2cb5