JQuery Ajax post request mit node.js und express

Ich habe versucht, die AJAX-post-request mit JQuery meinen Node.JS server in Node.JS und Express ist, aber es nicht funktioniert!

var express = require('express')
var app = express();
app.listen(8888);

app.configure(function(){

   app.use(express.bodyParser());
   app.set('views',__dirname + '/views');
   app.set('view engine', 'ejs');
   app.use(express.static(__dirname + '/public'));
   app.use(express.cookieParser());
   app.use(app.router);

});

app.get('/', function (req, res){

   res.render('ajax.ejs');

});

app.post('/ajax', express.bodyParser(), function (req, res){

   console.log(req);
   console.log('req received');
   res.redirect('/');

});

- Und dies ist die ajax.ejs:

<html>
<head>
  <script src="http://code.jquery.com/jquery-1.6.2.min.js"></script>    
  <script type="text/javascript">

      $('#enter').click(function(){  

     $.ajax({ 
           url: '/ajax',
           type: 'POST',
           cache: false, 
           data: { field1: 1, field2: 2 }, 
           success: function(data){
              alert('Success!')
           }
           , error: function(jqXHR, textStatus, err){
               alert('text status '+textStatus+', err '+err)
           }
        })
     });            

</script>
</head>
<body>

<form>
   <input type="button" id="enter" value="Enter">
</form>

</body> 
</html>

Wenn die ajax.ejsist geladen, es gibt keine Ausgabe in der Konsole, also, die die post-Anforderung nicht funktioniert hat. Was kann ich tun?

Danke im Voraus!

verschieben express.bodyParser (), um die app.Gebrauch ( - ) Abschnitt: app.use(express.bodyParser()); Die Körper der post, den Sie abrufen können, die über req.Körper.
Fertig! So, ich ändern console.log(req); zu console.log(req.body);. Aber die post-Anforderung, stills nicht arbeiten, ich habe keine Ausgabe in der Konsole.

InformationsquelleAutor MrMangado | 2012-12-27

Schreibe einen Kommentar