Body 解析器行为异常

Body parsers behaving weirdly

我正在尝试用很少的 API 开发一个应用程序,我在这里面临的问题是当我使用

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

作为我的中间件,它不接受我通过邮递员发送的请求(所有通过邮递员发送的请求都带有空 body idk 为什么。它接受所有通过 html 表单发送的请求.

另一方面,如果我使用

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

作为我解析 json objects 的中间件,它接受来自邮递员的所有请求,但不接受来自我的浏览器表单的请求。谁能解释一下这里发生了什么?

为了让 express 能够解析 JSON 请求负载和简单的 form-data 请求,您只需设置上述的 both中间件(注意 express.json() 没有扩展选项):

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

有关详细信息,请参阅文档:

https://expressjs.com/en/api.html#express.json https://expressjs.com/en/api.html#express.urlencoded