Recibiendo req.body vacío con formulario de correo con Express node.js
Tengo un formulario simple, que envía datos POST a mi servidor Node.JS, con Express. Esta es la forma:
<form method="post" action="/sendmessage">
<div class="ui-widget">
<input type="text" id="search" data-provide="typeahead" placeholder="Search..." />
</div>
<textarea id="message"></textarea>
</form>
El ui-widget y la entrada se repiten contypehead
, una biblioteca autocompletada de Twitter. Y así es como manejo la solicitud POST en el servidor:
app.post('/sendmessage', function (req, res){
console.log(req.body);
usermodel.findOne({ user: req.session.user }, function (err, auser){
if (err) throw err;
usermodel.findOne({ user: req.body.search }, function (err, user){
if (err) throw err;
var message = new messagemodel({
fromuser: auser._id,
touser: user._id,
message: req.body.message,
status: false
});
message.save(function (err){
if (err) throw err;
res.redirect('/messages')
})
});
});
});
La consola me muestra '{}', y luego un error conreq.body.search
, porquesearch
no está definido. No sé qué está pasando aquí, y no es un problema relacionado con eltypehead
entrada. Alguna solución para este problema...?
¡Gracias de antemano!