PouchDB - Anhang hinzufügen

Sie können ein Binärobjekt mit dem Dokument an ein Dokument anhängen putAttachment() Methode in PouchDB.

Syntax

Es folgt die Syntax von putAttachment(). An diese Methode müssen wir die Dokument-ID, die Anhangs-ID und den MIME-Typ zusammen mit dem Anhang übergeben. Diese Methode akzeptiert auch eine optionale Rückruffunktion.

db.putAttachment( docId, attachmentId, attachment, type, [callback] );

Wir können den Anhang mithilfe von Blob- oder Pufferobjekten vorbereiten, wobei blob wird während der Arbeit mit dem Browser und verwendet buffer wird beim Arbeiten mit verwendet Node.jsDa wir unsere Programme in Node.js demonstrieren, verwenden wir Pufferobjekte, um Dokumente vorzubereiten.

Beispiel

Im Folgenden finden Sie ein Beispiel für das Erstellen eines Dokuments mit einem Anhang in einer Datenbank mit dem Namen my_database in PouchDB mit putAttachment() Methode.

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

//Creating the database object var db = new PouchDB('my_database');

//Preparing the attachment 
var my_attachment = new Buffer(['Welcome to tutorialspoint'], {type: 'text/plain'});

//Adding attachment to a document 
db.putAttachment('001', 'att_1.txt', my_attachment, 'text/plain', function(err, res) { 
   if (err) { 
      return console.log(err); 
   } else { 
      console.log(res+"Attachment added successfully") 
   } 
});

Speichern Sie den obigen Code in einer Datei mit Namen Add_Attachment.js. Öffnen Sie die Eingabeaufforderung und führen Sie die JavaScript-Datei mit ausnode Wie nachfolgend dargestellt.

C:\PouchDB_Examples >node Add_Attachment.js

Dadurch wird ein leeres Dokument in der genannten Datenbank erstellt, dem ein Anhang hinzugefügt wird my_database Dies wird in PouchDB gespeichert und zeigt die folgende Meldung an.

Attachment added successfully

Sie können überprüfen, ob der Anhang hinzugefügt wurde, indem Sie das Dokument mit dem folgenden Code lesen.

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

//Creating the database object var db = new PouchDB('my_database');

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

Speichern Sie den obigen Code als read_doc.jsund ausführen. Wenn Sie dieses Programm ausführen, sehen Sie den folgenden Inhalt des Dokuments.

{ 
   _attachments: { 
      att_1.txt: { 
         content_type: 'text/plain',
         digest: 'md5-k7iFrf4NoInN9jSQT9WfcQ==',
         data: 'AA==' 
      } 
   },
   _id: '001',
   _rev: '1-620fd5f41d3328fcbf9ce7504338a51d' 
}

Hinzufügen eines Anhangs zu einem vorhandenen Dokument

Angenommen, in einer Datenbank befindet sich ein Dokument mit dem Namen my_database PouchDB mit ID '002'. Sie können den Inhalt abrufen, indem Sie das ausführenread_doc.js durch Ändern des ID-Werts in 002, Wie nachfolgend dargestellt.

{ 
   name: 'Raju',
   age: 23,
   designation: 'Designer',
   _id: '002',
   _rev: '1-05ca7b5f3f4762a9fb2d119cd34c8d40' 
}

Jetzt können Sie diesem Dokument einen Anhang hinzufügen _rev Wert.

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

//Creating the database object var db = new PouchDB('my_database');

//Adding attachment to existing document 
var my_attachment = new Buffer (['Welcome to tutorialspoint'], {type: 'text/plain'});

rev = '1-05ca7b5f3f4762a9fb2d119cd34c8d40'; 
db.putAttachment('002', 'att_1.txt', rev, my_attachment, 'text/plain', function(err, res) { 
   if (err) { 
      return console.log(err); 
   } else { 
      console.log (res + "Attachment added successfully") 
   } 
});

Speichern Sie den obigen Code in einer Datei mit dem Namen Add_Attachment_to_doc.js. Öffnen Sie die Eingabeaufforderung und führen Sie die JavaScript-Datei mit ausnode Wie nachfolgend dargestellt.

C:\PouchDB_Examples >node Add_Attachment_to_doc.js

Dadurch wird dem angegebenen Dokument ein Anhang hinzugefügt, in dem die folgende Meldung angezeigt wird.

Attachment added successfully

Wenn Sie den ID-Wert in ändern read_doc.js zu 002 Wenn Sie es ausführen, erhalten Sie die folgende Ausgabe.

{ 
   name: 'Raju',
   age: 23,
   designation: 'Designer',
   _attachments: { 
      att_1: { 
         content_type: 'text/plain',
         digest: 'md5-k7iFrf4NoInN9jSQT9WfcQ==',
         data: 'AA==' 
      } 
   },
   _id: '002',
   _rev: '2-3bb4891b954699bce28346723cc7a709' 
}

Hinzufügen eines Anhangs zu einem Remote-Dokument

Sie können dem Dokument, das in einer Datenbank vorhanden ist, die remote auf dem Server (CouchDB) gespeichert ist, sogar einen Anhang hinzufügen.

Dazu müssen Sie anstelle eines Datenbanknamens den Pfad zur Datenbank in CouchDB übergeben, die das zu lesende Dokument enthält.

Beispiel

Angenommen, es gibt eine Datenbank mit dem Namen my_databaseauf dem CouchDB-Server. Wenn Sie dann die Liste der Datenbanken in CouchDB mithilfe der URL überprüfenhttp://127.0.0.1:5984/_utils/index.html Sie erhalten den folgenden Screenshot.

Und wenn Sie die genannte Datenbank auswählen my_databasekönnen Sie den Inhalt wie unten gezeigt anzeigen.

Im Folgenden finden Sie ein Beispiel für das Hinzufügen eines Anhangs zum Dokument 001 in einer Datenbank mit dem Namen gespeichert my_database welches auf dem CouchDB-Server gespeichert ist.

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

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

//Adding attachment to existing document
var my_attachment = new Buffer (['Welcome to tutorialspoint'], {type: 'text/plain'});

rev = '1-36c34fdcf29a652876219065f9681602';
db.putAttachment('001', 'att_1.txt',rev, my_attachment, 'text/plain', function(err, res) {
   if (err) {
      return console.log(err);
   } else {
      console.log (res+ "Attachment added successfully")
   }
});

Speichern Sie den obigen Code in einer Datei mit dem Namen Remote_Add_Attachment.js. Öffnen Sie die Eingabeaufforderung und führen Sie die JavaScript-Datei mit ausnode Wie nachfolgend dargestellt.

C:\PouchDB_Examples >node Remote_Add_Attachment.js

Dadurch wird dem angegebenen Dokument ein Anhang hinzugefügt, in dem die folgende Meldung angezeigt wird.

Attachment added successfully

Wenn Sie nun das Dokument überprüfen, können Sie den hinzugefügten Anhang beobachten, wie im folgenden Screenshot gezeigt.