直接 Lambda 解析程序 - Amazon AppSync
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

直接 Lambda 解析程序

直接 Lambda 解析程序

使用直接 Lambda 解析器,您可以在使用时规避使用 VTL 映射模板Amazon Lambda数据源。AppSync 可以为您的 Lambda 函数提供默认有效负载以及从 Lambda 函数对 GraphQL 类型的响应的默认转换。您可以选择提供请求模板、响应模板,也可以选择两者都不提供以及AmazonAppSync 将相应地处理它。

要了解有关默认请求有效负载和响应转换的更多信息,AmazonAppSync 提供的,请参阅直接 Lambda 解析器参考. 有关如何设置Amazon Lambda数据源和设置 IAM 信任策略,请参阅附加数据源.

添加 Lambda 数据源

在激活 Direct Lambda 解析器之前,首先必须添加 Lambda 数据源。

添加 Lambda 数据源

  1. 登录到Amazon Web Services Management Console打开Amazon AppSync控制台.

  2. 在导航窗格中,选择和。数据源选择,然后选择创建数据源.

    1. 适用于Data source name中,输入数据源的名称,例如myFunction.

    2. 适用于数据源类型,选择Amazon Lambda功能.

    3. 适用于区域选择适当的区域。

    4. 适用于函数 ARN从下拉列表中选择 Lambda 函数。您可以搜索函数名称或手动输入要使用的函数的 ARN。

    5. 选择Create按钮。

  3. 创建新 IAM 角色(推荐)或选择现有角色,现有角色需拥有lambda:invokeFunctionIAM 权限。现有角色需要下文中说明的信任策略。附加数据源.

    以下是具有对资源执行操作所需权限的 IAM 策略示例:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:invokeFunction" ], "Resource": [ "arn:aws:lambda:us-west-2:123456789012:function:myFunction", "arn:aws:lambda:us-west-2:123456789012:function:myFunction:*" ] } ] }

激活直接 Lambda 解析器

创建 Lambda 数据源并设置适当的 IAM 角色以允许AmazonAppSync 要调用该函数,您可以将其链接到解析器或管道函数。

将 Lambda 数据源链接到解析器或管道函数

  1. 登录到Amazon Web Services Management Console打开Amazon AppSync控制台.

  2. 在导航窗格中,选择和。架构.

  3. 解析程序部分中,选择一个字段或操作,然后选择Attach按钮。

  4. In创建新解析程序从下拉列表中选择 Lambda 函数。

  5. 为了利用 Direct Lambda 解析器,请确认请求和响应映射模板在配置映射模板部分。

通过禁用映射模板,您正在向Amazon AppSync接受在直接 Lambda 解析器参考.

通过禁用请求映射模板,您的 Lambda 数据源将收到包含整个上下文对象。

通过禁用响应映射模板,您的 Lambda 调用的结果将根据请求映射模板的版本或是否也禁用了请求映射模板进行转换。