Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何正确配置meteor以使用节点文件上传模块';穆特';_Node.js_Meteor_Multer - Fatal编程技术网

Node.js 如何正确配置meteor以使用节点文件上传模块';穆特';

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

我只是从流星开始

我找到并添加了“multer”软件包:

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/