3

マルチパートフォームデータを処理する Node js アプリケーションを作成しているため、その目的で multer を使用しています。問題は、それreq.bodyが常に未定義であることです。

これが私のコードです:

var app = express();
var http = require('http').createServer(app);

//All environments
app.set('port', process.env.PORT || config.ports.HTTP_PORT);
app.set('views', config.folders.views);
app.set('view engine', 'ejs');

//Express 4 dependencies
app.use(morgan('dev'));
app.use(multer({ dest: config.folders.uploads}))
app.use(cookieParser()); //Parser for cookie session
app.use(session({ secret: 'secret' }));
app.use(passport.initialize()); //Init passport
app.use(passport.session()); //Persistent login sessions
app.use(flash()); //Flash messages

//Public folder
app.use(express.static(config.folders.public));

require('./auth')(passport); //Add auth methods to passport
require('./routes')(app, passport); //Add routes

app.post('/test', function(req, res) {

    console.log(req.body.test); //req.body always undefined

});

何が問題なのですか?

編集:

現在、 req.bodyはデータで満たされていますが、req.files プロパティはまだ定義されていません。

4

3 に答える 3

1

次のコードで bodyParser を追加します。

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
    extended: true
}));
于 2014-11-09T18:31:24.770 に答える