1

我已经构建了一个基于简单cloud-SDK的应用程序,用于在事件进入队列后立即添加以接收事件WebhookEnterprise messaging queue

我有一个OPTIONSPOST功能。OPTIONS用于与队列握手,它可以工作。

现在,当队列中有消息时,它会用POST块撞击我的应用程序,但request body它会作为空对象出现。

我已经尝试了相同的postman方法,我能够在request body. 仅从Enterprise messaging queue,数据为空。

相反,为了验证这一点,我使用了一个Express基于nodejs应用程序,在那里我能够从队列中接收数据。

我在基于 Cloud-SDK 的代码中缺少什么?

POST 块,看起来像这样

  @Post('ems-events')
  receiveEmsEvents(@Body() requestBody: string, @Req() req:Request) {
     Logger.log("Event Received with Data:");
     Logger.log(requestBody);
     Logger.log(req.body);
     Logger.log("Log over--");
     Logger.log(Object.keys(req));

    return {};
  }
4

1 回答 1

1

截至今天,适用于 JavaScript 的 SAP Cloud SDK 不提供对 Enterprise Messaging 的任何支持。您在此处编写的代码很可能是Nest.js代码,它是一个独立的框架。话虽如此,Nest.js 确实在默认情况下运行 Express.js。因此,如果您能够使其在 Express 中运行,那么您应该能够使其在 Nest 中运行。

于 2020-03-13T07:37:53.167 回答