我正在开发一个NodeJS API,我有下面的文件夹 struct .我需要从index.js本身提取API调用的请求体信息,然后将其传递给StripeController.js stripeController.js.

  • Index.js index.js
      • 控制器
          • StripeController.js stripeController.js

      我使用下面的代码段从index.js中提取数据,但是它返回undefined,因为它在请求通过index.js时无法识别req.body.

    app.use((req, res, next) => {
      if (req.originalUrl.startsWith('/api/stripeWebHook')) {
        console.log(req.body)
        next();
      }
    });
    
    const stripeWebHook = require('./webhook/stripeWebHook')
    app.use('/api/stripeWebHook', stripeWebHook)
    
    module.exports = app
    

    我可以使用相同的属性简单地提取身体,当它达到StripeController.js stripeController.js时.

    我怎么才能解决这个问题呢?

推荐答案

req.body个 包含在请求正文中提交的数据的键-值对.By default, it is undefined,并在使用正文解析中间件(如正文解析器或Multer)时填充.

const app = require('express')()
const bodyParser = require('body-parser')
const multer = require('multer') // v1.0.5
const upload = multer() // for parsing multipart/form-data

app.use(bodyParser.json()) // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })) // for parsing application/x-www-form-urlencoded

app.post('/', (req, res, next) => {
  res.json(req.body)
})

Javascript相关问答推荐

详细更改参考价值:"

将音频记录从js发送到activx-web服务器以保存到磁盘

React Hooks中useState的同步问题

如何修复内容安全策略指令脚本-SRC自身错误?

Klaro与Angular的集成

通过使用100%间隔时间来代表我们还剩多少时间来倒计时

字节数组通过echo框架传输到JS blob

从mat—country—select获取整个Country数组

jQuery提交按钮重新加载页面,即使在WordPress中使用preventDefault()

Phaser 3 console. log()特定游戏角色的瓷砖属性

用JavaScript复制C#CRC 32生成器

如何在JavaScript文件中使用Json文件

Prisma具有至少一个值的多对多关系

Next.js服务器端组件请求,如何发送我的cookie token?

用JS从平面文件构建树形 struct 的JSON

以Angular 实现ng-Circle-Progress时出错:模块没有导出的成员

使用带有HostBinding的Angular 信号来更新样式?

是否可以将异步调用与useState(UnctionName)一起使用

React:防止useContext重新渲染整个应用程序或在组件之间共享数据而不重新渲染所有组件

Next.js无法从外部本地主机获取图像