函数 - Amazon Serverless Application Model
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

函数

在 GraphQL API 中配置函数以执行某些操作。

语法

要在您的 Amazon Serverless Application Model (Amazon SAM) 模板中声明此实体,请使用以下语法。

YAML

LogicalId: CodeUri: String DataSource: String Description: String Id: String InlineCode: String MaxBatchSize: Integer Name: String Runtime: Runtime Sync: SyncConfig

属性

CodeUri

函数代码的 Amazon Simple Storage Service (Amazon S3) URI 或本地文件夹路径。

如果您指定本地文件夹的路径,则 Amazon CloudFormation 会要求在部署前先将该文件上传到 Amazon S3。您可以使用 Amazon SAM CLI 来简化此过程。有关更多信息,请参阅 在部署时使用 Amazon SAM CLI 上传本地文件

类型:字符串

必需:否

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 CodeS3Location 属性。

DataSource

此函数将附加到的数据源的名称。

  • 要引用 AWS::Serverless::GraphQLApi 资源中的数据源,请指定其逻辑 ID。

  • 要引用 AWS::Serverless::GraphQLApi 资源之外的数据源,请使用 Fn::GetAtt 内置函数提供其 Name 属性。例如,!GetAtt MyLambdaDataSource.Name

  • 要引用其他堆栈中的数据源,请使用 Fn::ImportValue

如果指定了 [NONE | None | none] 的变体,则 Amazon SAM 会生成 AWS::AppSync::DataSource Type 对象的 None 值。

类型:字符串

必需:是

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 DataSourceName 属性。

Description

函数的描述。

类型:字符串

必需:否

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 Description 属性。

Id

位于 AWS::Serverless::GraphQLApi 资源外的函数的函数 ID。

  • 要在同一 Amazon SAM 模板中引用函数,请使用 Fn::GetAtt 内置函数。例如 Id: !GetAtt createPostItemFunc.FunctionId

  • 要引用其他堆栈中的函数,请使用 Fn::ImportValue

使用 Id 时,不允许使用所有其他属性。Amazon SAM 会自动传递您引用的函数的函数 ID。

类型:字符串

必需:否

Amazon CloudFormation 兼容性:此属性为 Amazon SAM 独有,没有 Amazon CloudFormation 等效属性。

InlineCode

包含请求和响应函数的函数代码。

类型:字符串

必需:否

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 Code 属性。

LogicalId

函数的唯一名称。

类型:字符串

必需:是

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 Name 属性。

MaxBatchSize

BatchInvoke 操作中单个 Amazon Lambda 函数发送的解析程序请求输入的最大数量。

类型:整数

必需:否

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 MaxBatchSize 属性。

Name

函数的名称。指定以覆盖 LogicalId 值。

类型:字符串

必需:否

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 Name 属性。

Runtime

描述 Amazon AppSync 管道解析程序或 Amazon AppSync 函数使用的运行时。指定要使用的运行时的名称和版本。

类型运行时

必需:是

Amazon CloudFormation 兼容性:此属性为 Amazon SAM 独有,没有 Amazon CloudFormation 等效属性。它类似于 AWS::AppSync::FunctionConfiguration 资源的 Runtime 属性。

Sync

描述函数的同步配置。

指定在调用函数时要使用的冲突检测策略和解决策略。

类型:SyncConfig

必需:否

Amazon CloudFormation 兼容性:此属性直接传递给 AWS::AppSync::FunctionConfiguration 资源的 SyncConfig 属性。