2

我对 sam locals SNS 支持感到困惑。

只能使用 sam 模板将 Lambda 指向现有的 SNS 主题,或者 sam 也可以为我创建主题吗?

如果可能的话,我非常想做后者。

4

1 回答 1

3

我不确定何时添加此功能,但您目前可以使用 SAM local 创建 SNS 主题和 Lambda SNS 事件...这适用于 SAM Local 版本 0.10.0

这将创建一个名为“MyLambdaFunction”的 Lambda 函数,一个名为“SNSTopicName”的 SNS 主题,并将两者联系在一起

AWSTemplateFormatVersion: '2010-09-09'
Transform: 'AWS::Serverless-2016-10-31'
Description: "Test to create Lambda and SNS with SAM Local"
Resources:
  MyLambdaFunction:
    Type: 'AWS::Serverless::Function'
    Properties:
      CodeUri: .
      Runtime: nodejs8.10
      Handler: index.handler
      Description: "Function that is triggered from an SNS topic"
      MemorySize: 128
      Timeout: 10
      Events:
        SNS1:
          Type: SNS
          Properties:
            Topic:
              Ref: LambdaSNSTopic
  LambdaSNSTopic:
    Type: "AWS::SNS::Topic"
    Properties:
      DisplayName: "My SNS topic"
      Subscription:
        -
          Endpoint:
            Fn::GetAtt:
              - "MyLambdaFunction"
              - "Arn"
          Protocol: "lambda"
      TopicName: "SNSTopicName"

我不确定您是否能够使用现有的 SNS 主题

于 2019-01-15T15:36:40.823 回答