1

クライアント側では、jquery を使用してデータを投稿します。

        var data = {
            'city': 'england'
        }
        $.ajax({
            'type': 'post',
            'url': 'http://127.0.0.1:8000/',
            'data': data,
            'dataType': 'json',
            'success': function () {
                console.log('success');
            }
        })

私のserver.jsでは、投稿データをキャッチしようとしています:

var express = require('express');
var app = express.createServer();
app.configure(function () {
    app.use(express.static(__dirname + '/static'));
    app.use(express.bodyParser());
})

app.get('/', function(req, res){
    res.send('Hello World');
});

app.post('/', function(req, res){
    console.log(req.body);
    res.send(req.body);
});
app.listen(8000);

投稿は成功する可能性があり、200ステータスを返しますが、投稿データをログに記録できず、何も返さず、端末ログundefined.

なんで?どうすればこの問題を解決できますか?

4

1 に答える 1

2

データを正しく送信していません。

$.ajax({
  type: 'POST',
  data: JSON.stringify(data),
  contentType: 'application/json',
  url: '/endpoint'
});

jQueryでは、

contentType:'アプリケーション/json'

JSON データを送信します。

于 2012-07-26T14:39:27.730 に答える