Serverless Framework Express - 使用异步集成错误

问题描述 投票:0回答:1

所以我尝试使用与无服务器框架的 REST api 网关设置异步集成 -

它说

 functions:
  create:
    handler: myHandler
    events:
      - http:
          path: foo/test1
          method: post
          async: true   <-- This will invoke the Lambda return a 200 code but still run the Lambda

然而这并没有发生。当我尝试离线运行时,我不断收到

<pre>BadRequestError: request size did not match content length<br> &nbsp; &nbsp;at IncomingMessage.onEnd
错误。当我注释掉
async
设置时它消失了,但有时可以工作(全部离线)

但是一旦部署,我可以看到 200 返回,但 Lambda 根本不执行。我在那里登录了,但这些都没有被触发。 关于如何实现这种行为有什么想法吗?我需要运行一些较长的进程,并且不想因此让用户等待响应。

这个设置有问题吗?我找不到太多这方面的文档,并且已经搜索了相当长的时间。因此,任何正确方向的帮助或指示都会很棒。

谢谢!

asynchronous aws-lambda aws-api-gateway serverless-framework
1个回答
0
投票

我也有类似的问题。 就我而言,事实证明这是因为发送的请求有标头

Content-Type: application/json

尽管有请求,但它是一个没有正文内容的 GET。

删除标头 Content-Type 有帮助

© www.soinside.com 2019 - 2024. All rights reserved.