Meteor collectionfs Server-Seite einfügen
Hallo allerseits, ich benutze das Dateisystem collectionfs + gridfs + cfs. In der Dokumentation zu collectionfs finde ich, wie man eine Datei auf der Clientseite wie folgt einfügt:
Template.myForm.events({
'change .myFileInput': function(event, template) {
FS.Utility.eachFile(event, function(file) {
Images.insert(file, function (err, fileObj) {
//Inserted new doc with ID fileObj._id, and kicked off the data upload using HTTP
});
});
}
});
In diesem Fall wird die Datei auf der Client-Seite eingefügt, aber in meinem Fall entferne ich unsicher, also kann ich sie nicht auf der Client-Seite einfügen. Ich versuche, sie auf der Server-Seite einzufügen. Das ist also mein Code:
Template.myForm.events({
'change . myFileInput': function (event, template) {
FS.Utility.eachFile(event, function (file) {
var reader = new FileReader();
reader.onload = function (fileLoadEvent) {
Meteor.call('ImageUpload', file, reader.result, function (err, res) {
if (err) {
console.log(err);
} else {
alert(res);
}
});
};
reader.readAsBinaryString(file);
});
}
});
server.js:
Meteor.methods({
ImageUpload: function (fileInfo, fileData) {
console.log(fileInfo);
Images.insert(fileInfo, fileData, function (err, fileObj) {
if (err) console.log(err)
else {
//Inserted new doc with ID fileObj._id, and kicked off the data upload using HTTP
console.log(fileObj);
return fileObj._id;
}
});
}
});
Aber es funktioniert immer noch nicht. Bitte helfen Sie mir, das Problem zu beheben. Wie füge ich auf der Serverseite ein?