Ich arbeite an einer Meteor Anwendung.Wie wird eine mit CollectionFS in Meteor gespeicherte PDF-Datei bereitgestellt?
Derzeit habe ich ein paar PDFs auf meinem Server. Um diese bereits bestehende PDF-Dateien direkt an den Client zu dienen, das tue ich es auf diese Weise, und es funktioniert sehr gut.
Router.route("/file/:fileName", function() {
var fileName = this.params.fileName;
// console.log(process.env.PWD);
var filePath = process.env.PWD + '/' + fileName;
var fs = Meteor.npmRequire('fs');
var data = fs.readFileSync(filePath);
this.response.writeHead(200, {
"Content-Type": "application/pdf",
"Content-Length": data.length
});
this.response.write(data);
this.response.end();
}, {
where: "server"
});
ich spare diese PDFs zu Mongo mit CollectionFS (Später werde ich PDFs generieren und speichern Vorerst Ich speichere diese bereits vorhandenen PDF-Dateien direkt an Mongo, da ich zuerst den Mongo-Teil zur Arbeit bringen möchte.
testCollection = new FS.Collection("testCollection", {
stores: [new FS.Store.GridFS("testCollection")]
});
testCollection.allow({
'insert': function() {
return true;
}
});
var file = new FS.File(process.env.PWD + '/PDFKitExampleServerSide.pdf');
file.encoding = 'binary';
file.name('myPDF.pdf');
var document = testCollection.insert(file);
console.log(document._id);
Meine Frage ist, nachdem ich diese PDF-Dateien zu Mongo mit CollectionFS speichern (wie ich oben tun), wie kann ich abrufen und diese PDF-Dateien dienen?
Router.route("/database/:pdfId", function() {
//need help here
}, { where: "server"});