具有逻辑或

时间:2019-10-29 05:11:32

标签: amazon-sns subscription

我想设置一个订阅过滤器策略,以在消息出现时过滤消息-

  • 没有消息属性“宠物”

    OR

  • 如果确实具有消息属性“ pet”,则它与值“ cat”匹配

我已经尝试过此订阅筛选器策略,但它无法按预期工作。

{
  "pet": [
    {
      "exists": false
    },
    "cat"
  ]
}

此消息策略正确地允许所有不具有预期的消息属性“ pet”的消息,但它还会阻止所有具有不希望的值为“ cat”的消息属性“ pet”的消息。

有没有办法使此过滤器策略按预期工作?

这是一个快速测试-

阻止此操作

aws sns publish --topic-arn=${TOPIC_ARN} --message "abcd" --message-attributes='{"pet":{"DataType":"String.Array","StringValue":"[\"dog\"]"}}'

允许:

aws sns publish --topic-arn=${TOPIC_ARN} --message "abcd" --message-attributes='{"pet":{"DataType":"String.Array","StringValue":"[\"cat\"]"}}'

并允许这样做:

aws sns publish --topic-arn=${TOPIC_ARN} --message "abcd"

0 个答案:

没有答案