SailsJS:手动上传没有表单的文件

时间:2015-11-27 23:03:54

标签: sails.js

我正在尝试将手动生成的临时文件上传到我的skipper-GridFS接收器中。这是我的代码:

var blobAdapter = require('skipper-gridfs')({
                uri: uri
            });

var blobReceiver = blobAdapter.receive();

var readStream =  fs.createReadStream(newfile.path).pipe(blobReceiver);

执行脚本后,我收到以下错误:

TypeError: undefined is not a function
at /Users/me/Desktop/Entwicklung/soowtf-v2/files/node_modules/skipper-gridfs/index.js:225:31
at /Users/me/Desktop/Entwicklung/soowtf-v2/files/node_modules/skipper-gridfs/node_modules/mongodb/lib/mongodb/mongo_client.js:472:11
at process._tickDomainCallback (node.js:381:11)

我做错了什么?未定义的“回调”是否存在问题,如果是,我该如何定义它们?我只知道Sails作者在普通文件上传中使用了它:

req.file('video')
.on('error', function onError() { ... })
.on('finish', function onSuccess() { ... })
.pipe(receiving)

上面的代码有效,但我不想在GridFS中发送文件 - 我想在第一个例子中添加修改过的文件。

1 个答案:

答案 0 :(得分:0)

var blobadapter错误。

您可能想要尝试以下内容:

var blobAdapter  =  require('skipper-gridfs');
var blobReceiver =  blobAdapter.receive({
                        uri: uri
                    });