gpt4 book ai didi

javascript - body-parser 实际上对 Express 做了什么?

转载 作者:行者123 更新时间:2023-12-03 02:11:31 24 4
gpt4 key购买 nike

好吧,所以我正在检查我在学习一些教程时编写的旧 Node 代码。

我很难弄清楚 Body Parser 的确切功能。我也在使用ejs package

所以,我的基本直觉告诉我,主体解析器用于在 Node 和我的 html 模板之间传输数据,而 ejs 包用于将 javascript 嵌入到 HTML 模板中。

有人可以确认我的想法是否正确吗?由于某种原因,他们的文档对我来说似乎太先进了,无法理解。另外,如果有人也可以确认 * *npm request 的功能** 是进行API调用吗?

最佳答案

让我们尽量保持最不技术性。

假设您正在向 Node-js 服务器发送 html 表单数据,即您向服务器发出了请求。服务器文件将在请求对象下接收您的请求。现在按照逻辑,如果您在服务器文件中控制台记录此请求对象,您应该会在其中的某个位置看到表单数据,然后可以提取这些数据,但是哇!你实际上没有!

那么,我们的数据在哪里?如果它不仅仅出现在我的请求中,我们将如何提取它。

对此的简单解释是,http 以零散的形式发送您的表单数据,这些数据旨在在到达目的地时进行组装。那么您将如何提取数据。

这里描述了一个实际的方法:How bodyParser() works – Adam Zerner – Medium

但是,为什么每次都要手动解析数据 block 并组装它呢?使用名为“body-parser”的东西来为您完成此操作。

body-parser 解析您的请求并将其转换为一种格式,您可以从中轻松提取您可能需要的相关信息。

例如,假设您的前端有一个注册表单。您正在填写它,并请求服务器将详细信息保存在某处。

如果您使用 body-parser,从您的请求中提取用户名和密码就像下面一样简单。

………………………………………………………….

var loginDetails = {

username : request.body.username,

password : request.body.password

};

………………………………………………………….

基本上,body-parser 解析您传入的请求,组装包含表单数据的 block ,然后为您创建此正文对象并用您的表单数据填充它。

关于javascript - body-parser 实际上对 Express 做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49545883/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com