当前位置: 首页 > 知识库问答 >
问题:

如何通过API网关将JSON文件传递给AWS Lambda?

孔安阳
2023-03-14
curl -X POST -H "x-api-key: MyAPIKey" -H "Content-Type: application/json" -d @myFile.json https://my-api.us-east-1.amazonaws.com/default/MyLambda

共有1个答案

邬良才
2023-03-14

如果您在event.body中获得请求,那么这意味着您正在使用Lambda代理集成。

您正在寻找的是所谓的非代理集成或自定义集成。这里有更多关于如何设置的详细信息。取消选中此选项。然后必须配置请求和响应映射模板。

如果json如下所示-

{
  "attr1": "v1",
  "attr2": "v2"
}
#set($inputRoot = $input.path('$'))
{
  "attr1": "$inputRoot.attr1",
  "attr2": "$inputRoot.attr2",
}
 类似资料:
  • 我想知道是否可以使用API网关POST方法将YAML有效负载格式传递给AWS Lambda函数。我不想要任何有效载荷的模型,也不想使用模板检查有效载荷。我只想以YAML格式将数据传递给Lambda。有人成功地做到了这一点吗? 我之前使用JSON有效负载将有效负载传递给Lambda,但由于某些设计问题,我觉得YAML格式的有效负载更适合此任务。我尝试在请求正文中传递YAML有效负载,但出现以下错误。

  • 我在API网关中创建了一个API,用于将音频文件上载到s3,该文件作为多部分/表单数据从本地PC发送。 API集成请求如下所示 在URL路径参数中,添加bucket作为param,直接添加bucket名称 当我尝试上载文件时,收到错误响应, 需要做哪些更改?

  • 问题内容: 我知道该主题有很多答案,但是找不到解决我问题的方法。我有一个如下所示的ASP.NET MVC Web API: 我尝试这样称呼它: 然后,URL如下所示: 选择: 网址: 两种方法都不起作用。 我是否真的必须以字符串形式发送和接收它或使用POST? 问题答案: 不,不要尝试在GET请求中发送JSON。将JSON与其他具有主体的动词一起使用,例如POST和PUT。 通过使用属性装饰您的a

  • 我有一个用Java编写的AWS Lambda函数,它由AWS API网关调用触发。 我试图向其中一个endpoint发出请求,并使用JSON作为有效负载。 然后,网关将检测,并通过默认模板传递所有请求参数(包括正文)。有趣的是这一部分 它应该给我一张

  • 问题内容: 我必须在6个以上的环境中运行相同的其余api脚本集。因此,我已将所有测试数据和端点/资源路径存储在json文件中。然后,我尝试将此json文件读入我的karate- config.js文件,这是因为我要获取与从命令行(karate.env)传递的环境相对应的数据,该环境正在读入我的空手道-config.js文件 以下是我的json文件示例 下面是我的karate-config.js文件

  • 因此,在这里我将basePackages硬编码为“com.example”。这不是我想要的。我想通过命令行参数从终端运行应用程序时接收包名。有没有一种方法可以将命令行参数传递给应用程序,并使用我在BasePackages中接收到的参数?提前致谢