如何正确configurationmeteor与节点file upload模块'multer'

我只是从meteor开始。

我find了,并添加了“multer”包:

meteor add pfafman:multer 

现在,我想知道如何configurationmeteor的服务器端使用。

在我的普通节点应用程序中,我使用它是这样的:

 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的手术只不过是npm手术的一个包装(如果你经过它的源头,你会意识到它所做的只是

 multer = Npm.require('multer'); 

然后通过api.export('multer');将其作为全局variables导出api.export('multer'); (他甚至没有包含任何testing用例,请随便演示一下。))

在express中, app.use()用于将中间件的“图层”添加到中间件堆栈。 由于现在multer已经是一个可以在服务器的任何地方访问的全局variables(在你有meteor add pfafman:multer ),你可以像使用meteor add pfafman:multer的方法一样使用它:

 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; } }) }); } 

注意:这将创builduploads目录

 YourMeteorProject/.meteor/local/build/programs/server/