Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何仅为POST请求创建节点服务器_Javascript_Node.js_Express - Fatal编程技术网

Javascript 如何仅为POST请求创建节点服务器

Javascript 如何仅为POST请求创建节点服务器,javascript,node.js,express,Javascript,Node.js,Express,我只需要创建一个节点服务器来接收POST请求。根据请求主体中的信息,我需要创建一个系统调用。我该怎么做?到目前为止,我只有: var express = require('express'); var bodyParser = require('body-parser'); var app = express(); app.use(bodyParser); app.post('/', function(req, res){ console.log('POST /'); cons

我只需要创建一个节点服务器来接收POST请求。根据请求主体中的信息,我需要创建一个系统调用。我该怎么做?到目前为止,我只有:

var express = require('express');
var bodyParser = require('body-parser');
var app = express();

app.use(bodyParser);
app.post('/', function(req, res){
    console.log('POST /');
    console.dir(req.body);
});

port = 3000;
app.listen(port);
console.log('Listening at http://localhost:' + port)
但是,当我向127.0.0.1:3000发出POST请求时,主体未定义

var请求=要求(“请求”)


在最新版本的express中,未使用express.bodyParser。请参见

此处的中间件问题。express4.x中不推荐使用
express.bodyparser()
中间件。这意味着您应该使用独立的
bodyparser
中间件

奇怪的是,您正在通过以下操作导入正确的中间件:

var-bodyParser=require('body-parser')

但是,您应该以不同的方式使用它。请看下面给出的示例:

var app = require('express')();
var bodyParser = require('body-parser');
var multer = require('multer'); 

app.use(bodyParser.json()); // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
app.use(multer()); // for parsing multipart/form-data

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

您实际的POST请求是什么样子的?您使用的是哪个版本的节点?@Tholle-我用POST请求(在节点中)编辑了问题正文。使用bodyParser作为中间件,如下所示,并确定您是否仍然面临问题。
var app = require('express')();
var bodyParser = require('body-parser');
var multer = require('multer'); 

app.use(bodyParser.json()); // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })); // for parsing     application/x-www-form-urlencoded
app.use(multer()); // for parsing multipart/form-data

app.post('/', function (req, res) {
console.log(req.body);
res.json(req.body);
})
var app = require('express')();
var bodyParser = require('body-parser');
var multer = require('multer'); 

app.use(bodyParser.json()); // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
app.use(multer()); // for parsing multipart/form-data

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