目前正在使用 lambda 学习 aws 工作流。当 dynamodb 中的布尔值变为真时,我试图触发 302 重定向。我不知道如何使用 lambda 轮询 dynamodb,然后通过 api 网关将重定向发送回客户端。我需要使用 websoket 吗?
3 回答
2
使用 websocket 从 Lambda 通知客户端将是一个不错的选择。我最近也遇到了同样的情况,我在某些客户端机器上显示了通知。API 网关无法使用,因为 API 网关与请求绑定。但在您的情况下,您不会向 Lambda 创建任何请求。您必须阅读 dynamoDB 事件并使用 websocket 通知客户端。
- 您可以创建 websocket 连接并将其保存在 dynamoDB 中。
- 您必须在 Lambda 中使用 dyanmoDB 事件。检查旗帜。获取 dynamoDB 中所有保存的 websocket 并向它们发送通知。
- 请记住更新 dyanmoDB 表,以防任何 websocket 连接被关闭。
为了轮询 dyanmoDB 事件。您可以在您的 lambda 函数中使用 dynamoDB 事件,并根据您的轮询请求中可用的有效负载。您可以发送通知。
于 2019-11-17T07:47:44.500 回答
0
您应该查看 AWS AppSync。它使用比轮询更好的方法内置了此类功能,但无需在 API 网关中实现 Web 套接字。
这是 AppSync 中的订阅页面:https ://docs.aws.amazon.com/appsync/latest/devguide/real-time-data.html
于 2019-11-17T14:07:30.713 回答
0
我还不清楚你的要求。
使用dynamodb 流来触发 lambda 是可能的。Dynamodb 流让您知道文档上的所有事件,例如插入的新文档、更新的文档以及已更新字段的详细信息。
于 2019-11-17T06:28:25.847 回答