Node.js 如何正确配置meteor以使用节点文件上传模块';穆特';
我只是从流星开始 我找到并添加了“multer”软件包:Node.js 如何正确配置meteor以使用节点文件上传模块';穆特';,node.js,meteor,multer,Node.js,Meteor,Multer,我只是从流星开始 我找到并添加了“multer”软件包: meteor add pfafman:multer 现在,我想知道如何配置meteor的服务器端来使用 在我的普通节点应用程序中,我是这样使用它的: app.use(multer({ dest: './uploads/', rename: function (fieldname, filename) { return filename+Date.now(); },
meteor add pfafman:multer
现在,我想知道如何配置meteor的服务器端来使用
在我的普通节点应用程序中,我是这样使用它的:
app.use(multer({ dest: './uploads/',
rename: function (fieldname, filename) {
return filename+Date.now();
},
onFileUploadStart: function (file) {
console.log(file.originalname + ' is starting ...');
},
onFileUploadComplete: function (file) {
console.log(file.fieldname + ' uploaded to ' + file.path);
var fileName = file.name;
var done=true;
}
}));
Meteor中的等效服务器代码是什么?pfafman的multer只不过是npm multer的一个包装器(如果你仔细查看,你会发现它真正做的就是
multer = Npm.require('multer');
然后通过api.export('multer');
将其作为全局变量导出(他甚至没有包括任何测试用例,更不用说演示了)
在express中,app.use()
用于将中间件“层”添加到中间件堆栈中。由于现在multer
已经是服务器上任何地方都可以访问的全局变量(在您使用meteor add pfafman:multer
之后),您只需在meteor.startup中调用它,就可以像在express中那样使用它了:
if (Meteor.isServer) {
Meteor.startup(function () {
multer({ dest: './uploads/',
rename: function (fieldname, filename) {
return filename+Date.now();
},
onFileUploadStart: function (file) {
console.log(file.originalname + ' is starting ...');
},
onFileUploadComplete: function (file) {
console.log(file.fieldname + ' uploaded to ' + file.path);
var fileName = file.name;
var done=true;
}
})
});
}
注意:这将在中创建uploads
目录
YourMeteorProject/.meteor/local/build/programs/server/