PouchDB - Recuperando adjunto
Puede recuperar un archivo adjunto de PouchDB utilizando el getAttachment()método. Este método siempre devuelve objetos blob o búfer.
Sintaxis
A continuación se muestra la sintaxis del getAttachment(). Para este método, tenemos que pasar la identificación del documento y la identificación del adjunto. Este método también acepta una función de devolución de llamada opcional.
db.getAttachment( docId, attachmentId, [callback] );
Ejemplo
A continuación se muestra un ejemplo de cómo recuperar un archivo adjunto de un documento almacenado en PouchDB, usando getAttachment()método. Con este código, estamos intentando recuperar un archivo adjunto.att_1.txt del documento 001.
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('my_database');
//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);
}
});
Guarde el código anterior en un archivo con el nombre Retrieve_Attachment.js. Abra el símbolo del sistema y ejecute el archivo JavaScript usandonode Como se muestra abajo.
C:\PouchDB_Examples >node Retrieve_Attachment.js
Esto recupera el archivo adjunto del documento y se muestra en la consola como se muestra a continuación.
<Buffer 00>
Recuperación de adjuntos de un documento remoto
También puede recuperar un archivo adjunto de un documento existente en la base de datos que se almacena de forma remota en el servidor (CouchDB).
Para hacerlo, en lugar de un nombre de base de datos, debe pasar la ruta a la base de datos en CouchDB, que contiene el documento que se va a leer.
Ejemplo
Supongamos que hay una base de datos llamada my_databaseen el servidor CouchDB. Luego, si verifica la lista de bases de datos en CouchDB usando la URLhttp://127.0.0.1:5984/_utils/index.html obtendrá la siguiente captura de pantalla.
Si selecciona la base de datos llamada my_database, puede ver su contenido como se muestra a continuación.
Supongamos que hay un archivo adjunto en este documento como se muestra a continuación.
A continuación se muestra un ejemplo de cómo recuperar un archivo adjunto del documento. 001 que existe en una base de datos llamada my_database, que se almacena en el servidor CouchDB.
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('http://localhost:5984/my_database');
//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);
}
});
Guarde el código anterior en un archivo con el nombre Remote_Retrieve_Attachment.js. Abra el símbolo del sistema y ejecute el archivo JavaScript usandonode Como se muestra abajo.
C:\PouchDB_Examples >node Remote_Retrieve_Attachment.js
Esto recupera el documento adjunto y lo muestra en la consola como se muestra a continuación.
<Buffer 00>