Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.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 Express:请求主体为空_Javascript_Node.js_Express_Post - Fatal编程技术网

Javascript Express:请求主体为空

Javascript Express:请求主体为空,javascript,node.js,express,post,Javascript,Node.js,Express,Post,我有一个简单的express server: const express=require('express'); const exphbs=require('express-handlebar'); const path=require('path'); const bodyparser=require('body-parser'); 常量app=express(); const hbs=exphbs.create({ defaultLayout:'main', extname:'hbs' }

我有一个简单的express server:

const express=require('express');
const exphbs=require('express-handlebar');
const path=require('path');
const bodyparser=require('body-parser');
常量app=express();
const hbs=exphbs.create({
defaultLayout:'main',
extname:'hbs'
});
const | u PORT=process.env.PORT | 80;
附件发动机(“hbs”,hbs发动机);
应用程序集(“查看引擎”、“hbs”);
应用程序集(“视图”、“视图”);
use(bodyparser.urlencoded({extended:false}));
use(bodyparser.json({type:'application/*+json'}));
app.use(express.static(path.join(uu dirname,'public'));
应用程序使用(需要('./路由器/登录');
serverStart();
异步函数serverStart(){
试一试{
应用程序侦听(_端口);
log(“[SERVER]服务器正在侦听端口”+_port+”);
}捕获(错误){
console.log(错误);
}

}
我一直在尝试您的代码,它工作正常,您只需更改代码:

app.use(bodyparser.json({type:'application/*+json'}));
使用以下代码:

app.use(bodyparser.json({type:'application/json'}));
注意:如果您使用的是最新版本的
express
,则不应安装
正文解析器
,因为已包含
正文解析器

因此,您可以使用以下代码:

app.use(express.json());
use(express.urlencoded({extended:false}));

我希望它能帮助您。

尝试使用app.use(bodyparser.urlencoded({extended:true}));您是否尝试过在类型中不使用
*+
bodyparser.json({type:'application/*+json'})
。中给出的示例更像是
application/json
*/json
。请向我们展示您使用的postman命令行。你要送尸体吗?如果是,它是如何编码的?如果你的中间件覆盖了你要发送的正文的实际格式,那么这一切都是有效的,因为这两个格式中的一个没有对齐。@David784是的,但它没有对齐working@jfriend00完成