J'utilise express et de la difficulté à obtenir des données de formulaire de bodyParser. Peu importe ce que je fais, il apparaît toujours comme un objet vide. Voici mon express généré app.js code (la seule chose que j'ai ajouté était la route app.post en bas):Node.js/Formulaire Express post req.body ne fonctionne pas
var express = require('express');
var app = module.exports = express.createServer();
// Configuration
app.configure(function(){
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(__dirname + '/public'));
});
app.configure('development', function(){
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
app.configure('production', function(){
app.use(express.errorHandler());
});
// Routes
app.get('/', function(req, res){
res.sendfile('./public/index.html');
});
app.post('/', function(req, res){
console.log(req.body);
res.sendfile('./public/index.html');
});
app.listen(3010);
Voici mon formulaire HTML:
<!doctype html>
<html>
<body>
<form id="myform" action="/" method="post" enctype="application/x-www-form-urlencoded">
<input type="text" id="mytext" />
<input type="submit" id="mysubmit" />
</form>
</body>
</html>
Quand je soumets la forme, req.body est un objet vide {}
est utile de noter que cela se produit même si je supprime l'attribut enctype de la balise form
... y at-il quelque chose que je manque/faire le mal?
J'utilise noeud v0.4.11 et express v2.4.6
Merci beaucoup! Je ne sais pas comment j'ai négligé cela ... – binarymax