复杂 json 上的 sns 主题订阅过滤器

sns topic subscription filter on a complex json

我有一个如下所示的 json,每当客户被我们的 api 停用时,它就会发布到我的 sns 主题。当其他 tables/columns 是 updated/inserted 时,api 也会向同一主题发布消息。

{
  "transaction": {
    "operation": "UPDATE",
    "tableName": "Customer",
    "primaryKeyColumn": "CustomerID"
  },
  "columns": [
    {
      "columnName": "FirstName",
      "hasChanged": false
    },
    {
      "columnName": "IsActive",
      "oldValue": "1",
      "newValue": "0",
      "hasChanged": true
    }
  ]
}

我想创建一个订阅过滤器,用于过滤客户是否被停用。例如,如下所示:

{
     "operation": ["UPDATE"],
     "tableName": ["Customer"],
     "columnName": ["IsActive"],
     "hasChanged": [true],
     "newValue": ["0"]
   }

以上订阅过滤器不起作用。例如,如果我添加过滤器,我的队列中不会收到任何消息。但是如果我删除它,我会将消息发布到队列中。任何帮助表示赞赏。

看来我找到了答案 。我意识到我无法过滤邮件正文。我将不得不用属性重写过滤策略..