Return 可以通过 API 网关的响应看到 Lambda 的值?

Return value of the Lambda can be seen by response of API gateway?

我正在尝试在我的 AWS 账户上实施以下结构。我将使用 put/post 请求将图片上传到我的 s3 存储桶,并使用 Textract 处理以下图片。 API 对 Textract 的调用将由 Lamda 处理。所以这里是问题。 lambda 的响应会是我对 put/post 请求的响应吗?我的意思是,当我通过 API 网关 put/post 时,肯定会有响应。我想从 Lambda 的回复中看到这个回复内容。是否可以通过以下结构?

对 PUT/POST 请求的响应将是 200 OK 响应,表示文件已成功上传到 S3。 API 网关响应将在文件上传到 S3 完成后立即返回。据 API Gateway 所知,整个过程已在此时完成。调用您的 Lambda 函数的 S3 触发器异步发生,在您的 S3 上传完成后,因此不会参与对 PUT/POST 请求的响应。

这里有两个部分,在您当前的图表中,您无法直接执行您想做的事情。 S3 到 Lambda 的调用不属于同一流程 - 它由 AWS 为您完成,您无法直接控制它。

此外,提取文件可能需要一些时间,具体取决于上传文档的复杂程度。不是几个小时,但也不是瞬间。

因此它需要更改为断开连接的模型,在该模型中发送请求,然后在一段时间后您轮询结果或收到结果可用的通知。

从概念上讲,更像这样: