javascript - Express bodyparser 无法正常工作
问题描述
要设置我的 bodyparser,我使用以下代码:
const express = require('express')
const app = express();
const bodyParser = require('body-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: false
}));
现在,如果我的快速路由器中有以下 POST 路由:
var router = require('express').Router();
router.post('/sendadvertisement', async (req, res) => {
console.log(req.body)
});
结果是[Object: null prototype] {advertisement: 'test'}
-> Myreq.body
不是空的,因为它在我的控制台输出中是 json 格式。
我真的不明白这个结果是怎么发生的,因为我定义了 body 应该是 json 格式。我也试过了app.use(express.json())
,也不行。
解决方案
如果您使用的是 express,那么您可以使用此代码来设置您的正文解析器。
app.use(express.json( {extended:false} ));
app.use(express.urlencoded({extended: false}));
推荐阅读
- python - Flask wtforms 不允许上传图片
- windows - 向 Azure 解决方案显示 Windows 和 Linux 服务器防火墙数据
- python - 我在 python3.7/Windows 7 中编写的 Python 程序无法在 Windows XP 中运行
- symfony - 是否可以在 Symfony 中扩展翻译文件
- qt - 导入 Qt5Compat.GraphicalEffects:未找到 QML 模块
- wordpress - API请求后如何制作wordpress帖子
- java - 跨多个存储库导入 Java 包
- heroku - Heroku 登录 - 您的登录有问题
- ionic-framework - 如何为离子内容制作离子动画
- javascript - 聚焦给定html输入标签的元素?jQuery