Javascript 如何仅为POST请求创建节点服务器
我只需要创建一个节点服务器来接收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
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);
})