gpt4 book ai didi

amazon-web-services - 是否可以在 AWS API Gateway 的响应正文映射模板中访问原始请求正文?

转载 作者:行者123 更新时间:2023-12-04 13:02:03 29 4
gpt4 key购买 nike

使用 API 网关,我试图定义一个接受 application/json 的 POST 端点来执行以下操作:

  • 异步触发 Lambda
  • 使用由请求正文中的元素组成的 JSON 负载进行响应

  • 我有 #1 工作。我认为是书上的。

    这是#2 我被绊倒了。看起来我无权访问响应映射模板上下文中的请求正文。我可以使用 $input.params 访问原始查询参数,但是我找不到任何可以提供原始请求正文的属性,我需要它来获取我想要响应的数据。要么就是这样,要么我需要弄清楚如何异步启动 Lambda 以某种方式提供原始请求正文。

    有谁知道这是否可能?

    我的目标是确保我的 API 尽可能快地响应,而不会导致 Lambda 冷启动响应并通过启动 Lambda 同时触发异步工作流。我也愿意直接与 SNS 而不是 Lambda 集成并让 Lambda 订阅该主题,但我不知道这是否能让我访问响应映射模板中所需的数据。

    最佳答案

    来自 https://stackoverflow.com/a/61482410/3221253 :
    将原始请求正文保存在集成映射模板中:

    #set($context.requestOverride.path.body = $input.body)
    在集成映射响应中检索它:
    #set($body = $context.requestOverride.path.body)
    {
    "statusCode": 200,
    "body": $body,
    }
    您还可以访问特定属性:
    #set($object = $util.parseJson($body))
    {
    "id": "$object.id"
    }

    关于amazon-web-services - 是否可以在 AWS API Gateway 的响应正文映射模板中访问原始请求正文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54498437/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com