【问题标题】:API Gateway Response "null"API 网关响应“空”
【发布时间】:2019-01-09 03:46:04
【问题描述】:

我创建了一个网站,当单击按钮时,它会访问我的 AWS API Gateway 端点,该端点被设置为我的 AWS Lambda 函数的触发器。然后我的 Lambda 函数运行我的 java 项目的 zip 文件。

没有任何问题,所有这些都按我希望的那样工作,除了一个部分:因为项目中没有 HTTP 状态响应,所以 API 网关在 Lambda 函数完成时只返回“null”。我似乎找不到一种简单的方法来处理对用户的“空”响应。我只是想更改它以显示某种“成功”消息。

所以我的问题是,如何在不向我的项目中添加任何代码的情况下处理来自 API 网关的空响应?

【问题讨论】:

  • 我建议您从 Lambda 返回响应标头,这应该是您的 API 方法的代理集成。这样客户端就会知道请求是否成功。
  • @AtharKhan 嗯,这就是我要处理的问题。我的 Lambda 函数没有 HTTP 标头响应。因此,在 API Gateway 的“集成响应”部分中,我无法添加新的响应类型“null”并将其与响应模型映射以显示“成功”。
  • 我会保持简单。在 API 网关方法中添加您的 lambda 作为代理集成并返回以下内容:{ statusCode: 200, headers: { 'Access-Control-Allow-Origin': '*' }, body: 'Success' }; }

标签: amazon-web-services aws-lambda aws-api-gateway


【解决方案1】:

已修复。在 API Integration Response, Mapping Template 下,我生成了一个空模板:

#set($inputRoot = $input.path('$'))
{
     "message": "Test complete."
}

然后重新部署 API。

【讨论】:

    猜你喜欢
    • 2022-10-25
    • 2018-10-21
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 2016-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多