我正在使用以下函数定义:
missing:
handler: functions/eeegMissing.handler
events:
- sns: arn:aws:sns:us-west-2:xxx
filterPolicy:
type:
- EPILOG_PAGE_DATA_RECEIVED
SNS主题已存在。当我部署它时,将创建一个名称为
的订阅arn:aws:lambda:us-west-2:xxx:function:eeeg-dev-missing`
,但过滤器为空白。我希望过滤器显示为:
{ "type":["EPILOG_PAGE_DATA_RECEIVED"]}
我想念什么?
答案 0 :(得分:2)
您只有一个小语法错误。我具有以下事件的无服务器功能,并且可以正常工作:
events:
- sns:
arn: ${self:custom.devicesTopicArn}
filterPolicy:
operation:
- INSERT
因此,您的情况应该是:
missing:
handler: functions/eeegMissing.handler
events:
- sns:
arn: arn:aws:sns:us-west-2:xxx
filterPolicy:
type:
- EPILOG_PAGE_DATA_RECEIVED
答案 1 :(得分:0)
要澄清每个the Serverless docs的先前答案,当通过arn(相对于名称)指定主题时,arn值必须包含arn:
关键字(除了arn:
前缀之外)包含在AWS资源名称中。)