NodeJSでファイルをアップロードしようとしていますが、最も一般的なマルチパートライブラリを試しましたが、動作させることはできません。恐ろしいExpress 500 TypeError:未定義のメソッド 'complete'を呼び出せません
私はファイルを送信すると、完全なというメソッドが存在しないだけで500のエラーが発生しませんでした。私は似たようなモジュールだけを試してみました。 varがクラッシュする可能性はありますか?私はいくつかのconsole.log、utilを作りました。私は変数形式の何かを取得しませんでした。
これはコードです。これを解決しようとする素晴らしいアイデアがあり、より多くのコードが必要な場合は、お気軽にお問い合わせください!
var express = require('express');
var form = require('formidable');
var app = module.exports = express.createServer(
express.favicon()
, express.bodyParser()
, express.cookieParser()
, express.session({secret: 'topsecret'})
, everyauth.middleware()
, express.router(routes)
);
app.configure(function(){
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(express.session({secret: "aiudhasiudj12" }));
app.use(everyauth.middleware());
app.use(app.router);
app.set('view engine', 'jade');
app.use('views', __dirname + '/views');
app.use(express.static(__dirname + '/public'));
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
app.use(form({ keepExtensions: true }));
});
app.configure('development', function(){
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
everyauth.everymodule
.findUserById(function (userId, callback) {
Login.findLocalByEmail([userId], function (error, results) {
callback(null, { userId: userId, data: results});
});
});
everyauth.facebook...
[...]
app.get('/la', function(req, res){
res.send('<form action="la" method="post" enctype="multipart/form-data">'
+ '<p>Image: <input type="file" name="image" /></p>'
+ '<p><input type="submit" value="Upload" /></p>'
+ '</form>');
//console.log(util.inspect(form, true, null));
});
app.post('/la', function(req, res) {
console.log(util.inspect(req.form, true, null));
req.form.complete(function(err, fields, files) {
console.log(fields);
console.log(files);
if(err) {
next(err);
} else {
}
});
});
ありがとう!
私は恐ろしいですがブラウザは決して終わらず、決してthroughs form.parse関数を使わないようにしています。私は、フォーム定義の後にconsole.logをコーディングし、私の応答だった: '{エラー:ヌル、 が終了:偽、 maxFieldsSize:2097152、 keepExtensions:偽、 uploadDir: '/ tmp' の、 エンコーディング:「UTF-8 」 ヘッダー:ヌル、 タイプ:ヌル、 には、bytesreceived:ヌル、 はbytesExpected:ヌル、 _parser:ヌル、 _flushing:0、 _fieldsSize:0} '任意のアイデア? – enedebe