解决方法
身体解析器提取传入的请求流的整个身体部分,并将其暴露在req.body上,使其更容易接触。是啊!你可以自己做,但使用身体解析器会做所需要的,并将节省你的麻烦。
现在,这只是总结;身体解析器为您提供了一个中间件,使用nodejs/zlib来解压缩传入的请求数据,如果压缩和stream-utils/raw-body等待请求体的完整原始内容“解析”之前。
在使用原始内容后,身体解析器将使用四种策略之一进行解析,具体取决于您决定使用的特定中间件:
> bodyParser.raw():实际上并不解析身体,只是在缓冲区中将缓存的内容暴露在req.body上。
> bodyParser.text():将缓冲区作为纯文本读取,并将生成的字符串暴露在req.body上。
> bodyParser.urlencoded():将文本解析为URL编码数据(浏览器倾向于将表单数据从常规表单设置为POST),并将结果对象(包含键和值)暴露在req.body上。为比较;在PHP中,所有这些都会自动完成并在$ _POST中公开。
> bodyParser.json():将文本解析为JSON,并将结果对象公开在req.body上。
只有将req.body设置为所需的内容,它才会调用堆栈中的下一个中间件,然后可以访问请求数据,而无需考虑如何解压缩并解析它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。