AWS Appsync从Lambda调用变异吗?

Dee*_*pan 6 aws-lambda aws-appsync

我有一个客户端应用程序订阅了Appysync事件。数据源是RDS的Lambda函数。是否可以从Lambda函数中调用在RDS更新时触发的变异?

mpa*_*ris 6

如果我对您的理解正确,您想从 lambda 函数调用突变,该函数通过 RDS 中的更新触发,目的是将 RDS 中的更改通知订阅的客户。如果这是不正确的,现在停止我。

我假设您正在执行类似于此处描述的操作以在 RDS 发生变化时触发 lambda ( https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Integrating.Lambda.html )。

为了完成工作流程,我建议您创建一个本地解析器(一个指向“无”数据源的解析器),并让您的 lambda 函数在 RDS 中发生变化时使用您想要推送到客户端应用程序的数据调用该突变解析器。然后,您的客户端将使用 @aws_subscribe 指令通过本地解析器(而不是 RDS lambda 的解析器)订阅突变字段。通过这种方式,您连接的客户端将获知可能通过 AppSync 或通过直接连接到您的 SQL 实例进行的任何 RDS 更改。

希望这可以帮助。

  • 通常,您只需向自定义端点发送一个 HTTP 请求,其中包含一个包含查询、变量和可选操作的对象。那么这取决于您配置的身份验证策略。如果 api_key 那么你需要提供密钥作为标题。如果是 IAM,那么您需要使用您的 IAM 凭证对您的请求进行 SigV4 签名。如果是 userpools,您将需要通过用户池登录以获取 JWT 令牌,然后将其作为 Authorization 承载标头提供。如果是 OIDC,那么您将提供从 OIDC 提供商处获得的 JWT 作为 Auth 不记名令牌。 (3认同)