如何解决使用API Gateway的映射模板获取DynamoDB中的所有项目
是否存在使用API Gateway端点中的映射模板从DynamoDB表检索所有项目的简单方法?我通常会在返回数据之前使用Lambda处理数据,但这是一个非常简单的任务,Lambda似乎有点过分。
roleAttributeName roleHierarchyLevel roleIsActive roleName
"admin" 99 true "Admin"
"director" 90 true "Director"
"areaManager" 80 false "Area Manager"
我对获取数据感到满意,表示形式无关紧要,因为我以后可以在代码中对其进行进一步的转换。
我一直在环顾四周,但是所有教程都解释了如何通过查询和参数(例如roles/{roleAttributeName}
)来获取特定数据位,但是我只想点击roles/
并获取所有项目。
解决方法
API网关允许您将DynamoDB代理为服务。 Here您有一个有趣的教程(如何忽略索引相关的部分以使其起作用)。
要从表中检索所有项目,可以将 Scan 用作API Gateway中的操作。请记住,对于 Scan 和 Query 操作,DynamoDB limits the query的大小为1MB。 您还可以使用 Limit 参数在自动完成查询之前限制自己的查询。
,您需要做的就是
- 创建资源(无需花括号,因为我们不需要特定的项目)
- 创建一个get方法 在配置集成请求时,使用“扫描”而不是“在行动中查询”。
配置如下: enter image description here
- 现在尝试测试...您应该会得到答复。
- 要在邮递员上进行尝试,请先部署api,然后使用提供的链接进入邮递员,然后输入您的资源名称。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。