📜  Pouchdb检索附件

📅  最后修改于: 2020-12-01 02:53:00             🧑  作者: Mango

PouchDB检索附件

getAttachment()方法用于从PouchDB检索附件。此方法始终返回blob或缓冲区对象。

您必须传递文档ID和附件ID才能使用此方法。此方法还接受可选的回调函数。

句法:

db.getAttachment( docId, attachmentId, [callback] ); 

检索附件示例

让我们使用getAttachment()方法从名为“ Last_Database”的数据库中的文档“ 002”中检索附件的attachment_1.txt。

//Requiring the package 
var PouchDB = require('PouchDB');

//Creating the database object 

var db = new PouchDB('Last_Database');

//Reading the Document 
db.get('002',{attachments: true}, function(err, doc) { 
   if (err) { 
      return console.log(err); 
   } else { 
      console.log(doc); 
   } 
});

将以上代码保存在名为“ PouchDB_Examples”的文件夹中的名为“ Read_Attachment.js”的文件中。打开命令提示符,然后使用node执行JavaScript文件:

node Read_Attachment.js

从远程文档中检索附件

您还可以从远程存储的服务器(CouchDB)中检索附件。您只需将路径传递到CouchDB中的数据库,其中包含您要阅读的文档。

我们在CouchDB服务器上存储了一个数据库名称“ employees”。

单击“员工”数据库。您将在数据库中看到文档。

您可以看到ID为“ 001”的文档。单击ID,您将找到附件。

您可以使用Node.js命令提示符看到它:

//Requiring the package 
var PouchDB = require('PouchDB');

//Creating the database object 
var db = new PouchDB('http://localhost:5984/employees');

//Retrieving an attachment from a document 
db.getAttachment('001', 'att_1.txt', function(err, blob_buffer) { 
   if (err) { 
      return console.log(err); 
   } else { 
      console.log(blob_buffer); 
   } 
});

将以上代码保存在名为“ PouchDB_Examples”的文件夹中的名为“ Read_Remote_Attachment.js”的文件中。打开命令提示符,然后使用node执行JavaScript文件:

node Read_Remote_Attachment.js

输出: