2013-08-11 11 views
20

Sto facendo un tutorial su node.js e la lezione mi sta insegnando come creare un server usando il nodo. Nel codice seguente, cosa fa la linea connect.bodyParser()?Che cosa fa bodyParser() nel connect middleware?

var app = connect() 
    .use(connect.bodyParser()) 
    .use(connect.static('public')) 
    .use(function (req, res) { 
     if (req.url === '/process') { 
      res.end(req.body.name + ' would repeat ' + req.body.repeat + ' times.'); 
     } else { 
      res.end("Invalid Request"); 
     } 
    }) 
    .listen(3000); 

risposta

15

Si popola req.body con (tra le altre cose) il valore dei parametri POST. Ecco il documento e gli esempi: http://expressjs.com/api.html#req.body

bodyParser è una parte di "Connect", un insieme di middleware per node.js. Ecco i veri documenti e fonte da Connect: http://www.senchalabs.org/connect/bodyParser.html

Come si può vedere, è semplicemente un involucro sottile che cerca di decodificare JSON, se non riesce cercare di decidere urlencoded, e se non riesce cercare di decodificare Multi-Part.