Javascript 发送和处理POST请求

Javascript 发送和处理POST请求,javascript,node.js,express,Javascript,Node.js,Express,我有一个非常简单的node.js服务器 var express = require('express'); var app = express(); app.post('/savearticles', function (req, res) { res.send(req.body); }); 也没有比javascript代码更难的了 var xmlHTTP = new XMLHttpRequest(); xmlHTTP.onreadystatechange = fun

我有一个非常简单的node.js服务器

var express = require('express');
var app = express();

app.post('/savearticles', function (req, res) {
    res.send(req.body);
});
也没有比javascript代码更难的了

    var xmlHTTP = new XMLHttpRequest();
    xmlHTTP.onreadystatechange = function () {
        if (this.readyState === 4 && this.status === 200) {
            alert(xmlHTTP.responseText);
        }
    }
    xmlHTTP.open('POST', '/savearticles', true);
    xmlHTTP.setRequestHeader('Content-Type', 'application/json');
    xmlHTTP.send('postparameter');
它返回未定义(通过返回(typeof res.body)进行检查)。我做错了什么?

您缺少中间件。安装它,您的代码应该可以正常工作

const express = require('express')
const bodyParser = require('body-parser')
const app = express()

app.use(bodyParser.urlencoded({ extended: true }))
app.use(bodyParser.json())

app.post('/savearticles', (req, res) => {
    res.send(req.body)
})
您缺少中间件。安装它,您的代码应该可以正常工作

const express = require('express')
const bodyParser = require('body-parser')
const app = express()

app.use(bodyParser.urlencoded({ extended: true }))
app.use(bodyParser.json())

app.post('/savearticles', (req, res) => {
    res.send(req.body)
})

您可以注销req以及typeof req吗?@tocoolforscool,这里是req typeof req的日志object@tocoolforscool,我已经把警报放在里面了,如果它能工作,它就是空的。试着警报其他东西吗?在我看来,一切正常,但你的res可能是空的,如果一切正常,那就没什么意义了,除非你测试/输出了错误的东西。玩转它你能注销req和typeof req吗?@tocoolforscool,这里是req typeof req的日志object@tocoolforscool,我已经把警报放在里面了,如果它能工作,它就是空的。试着警报其他东西吗?在我看来,一切正常,但你的res可能是空的,如果一切正常,那就没什么意义了,除非你测试/输出了错误的东西。玩转Itan,除了这个答案,它仍然不想接收字符串参数,而是接受JSON.stringify(myObject)作为参数,也只接受myObject。除了这个答案,它仍然不想接收字符串参数,而是接受JSON.stringify(myObject)作为参数,也只接受myObject。