微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何通过S3 json文件后端在API网关中传递查询参数

如何解决如何通过S3 json文件后端在API网关中传递查询参数

我是AWS的新手,我已经按照本教程进行操作:https://docs.aws.amazon.com/apigateway/latest/developerguide/integrating-api-with-aws-services-s3.html,现在我可以从TEST控制台读取存储在s3上的AWS对象,该对象是以下内容(它是.json文件):

[ { “重要”:“是”, “ name”:“ john”, “类型”:“男性” }, { “重要”:“是”, “ name”:“ Sarah”, “类型”:“女性” }, { “重要”:“否”, “ name”:“ maxim”, “类型”:“男性” } ]

现在,我要实现的是传递查询参数。我在方法请求中添加 type ,并在Integration中添加了带有 method.request.querystring.type 映射的名为 type 的URL查询字符串参数。请求。

当我要测试时,不考虑键入 type = male ,我仍然得到3个元素而不是2个男性元素。

您认为这是什么原因吗?

有关信息,以下是资源(并且我正在使用 AWS Service 集成类型来创建GET方法,如AWS教程中所述)

/
 /{folder}
  /{item}
   GET

解决方法

如果有人对答案感兴趣,我已经能够解决我的问题。

完整详细的解决方案需要一个教程,但这里是主要步骤。困难在于许多活动部件,因此重要的是要独立测试每个部件以取得进展(你会告诉我这是非常基本的)。

  1. 确保您对 s3 数据库的 SQL 查询是正确的,为此您可以进入 s3 存储桶,单击您的文件并从操作中选择“使用 s3 选择查询”。

  2. 确保您的 lambda 函数有效,因此请检查您是否从测试事件构建并传递了正确的 SQL 查询

  3. 在 Method Request 面板中设置 API 查询字符串并在 Integration Request 面板中设置映射模板(对我来说它看起来像这样“TypeL1”:“$input.params('typeL1')”)使用json 内容类型

祝你好运!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。