不推荐使用正文解析器
Posted
技术标签:
【中文标题】不推荐使用正文解析器【英文标题】:Body Parser Deprecated 【发布时间】:2021-06-07 10:12:28 【问题描述】:我目前正在学习 node 和 express。但是当我需要并使用 body-parser 时,我的代码编辑器(VS Code)说它已被弃用。我该如何处理?我将链接我的编辑器的图像。
【问题讨论】:
这能回答你的问题吗? bodyParser is deprecated express 4 其实我之前尝试过搜索这个。我找到了这个答案,但对我没有帮助。 见this answer 【参考方案1】:如果您面临“bodyParser”,则不推荐使用。
去做
app.use(express.urlencoded(extended: true));
app.use(express.json());
注意:如果您使用的是4.16.0
或later
express 版本。
【讨论】:
【参考方案2】:body 解析器包已弃用。如果您使用的是最新版本的 express,则无需安装 body-parser 包。
可以直接使用
app.use(express.urlencoded(extended:true);
【讨论】:
【参考方案3】:现在将正文解析器添加到 Express。你可以像下面这样使用它:
app.use(express.json());
您可以将此中间件添加到代码中,然后就可以使用 json 方法。
【讨论】:
【参考方案4】:不要使用正文解析器
body 解析现在内置于 express
所以,简单地做
app.use(express.json()) //For JSON requests
app.use(express.urlencoded(extended: true));
直接来自快递
你可以使用npm uninstall body-parser
卸载body-parser
然后就可以使用req.body
获取请求的POST内容了
app.post("/yourpath", (req, res)=>
var postData = req.body;
//Or like this, for string JSON body
var postData = JSON.parse(req.body);
);
【讨论】:
以上是关于不推荐使用正文解析器的主要内容,如果未能解决你的问题,请参考以下文章