AWS SAM - 如何为 FunctionAlias 创建 API 事件?

AWS SAM - How can create an API event for a FunctionAlias?

我的 SAM 模板当前使用 Lambda 函数通过 API 网关提供信息。但是,我想让 API 网关改为指向别名。

我如何使用 SAM 来做到这一点?

LambdaFunction:
    Type: 'AWS::Serverless::Function'
    Properties: 
      Runtime: nodejs14.x
      Handler: index.handler
      CodeUri: ./software
      MemorySize: 128
      FunctionName: Name
      Timeout: 5
      Policies:
      - AmazonDynamoDBReadOnlyAccess
      Events:
        MyApiResource:
          Type: Api
          Properties:
            Path: /path
            Method: get
            RestApiId: !Ref ApiGatewayApi
  FunctionAlias:
    Type: AWS::Lambda::Alias
    Properties:
      FunctionName: !Ref LambdaFunction
      FunctionVersion: !GetAtt FunctionVersion.Version
      Name: prod
  

我试图将事件剪切并传递到别名,但没有成功。

AutoPublishAlias 属性 添加到 lambda 函数时,API 网关将在创建集成时使用该别名(通过使用 FQ Lambda ARN)

所以你只需要在函数中添加以下内容:

AutoPublishAlias: prod

Link here