是否可以使用服务总线处理JSON和访问参数?

时间:2017-01-24 10:05:00

标签: azure-logic-apps

我是Logic Apps的新手,我还没有找到任何东西。

我已经看到,当您使用“HTTP Request”-trigger并在“Request Body JSON Schema”-box中添加JSON模式时,可以添加JSON schema

我还看过在“集成帐户”中添加模式,但是文档中的部分说“确认您收到的XML文档是有效的”,这不是我想要的。

我正在使用Azure Service Bus Queue。 在这种情况下,我将PeekLock作为触发器,其想法是服务总线中的输入将具有某种格式。它都将采用JSON格式。我不“关心”或需要知道在服务总线之前发生了什么,我所知道的是每条消息都包含相同的格式。我的逻辑应用程序应该做的是在服务总线中接收消息,然后将其邮寄给它应该去的人,并添加是否有任何可以从blob存储添加的内容。我希望能够访问某些“标签”或“参数”,因为Service Bus只有几个标签。

我使用jsonschema.net来获取架构,这里是格式如何的JSON:

{
  "items": [
    {
      "Key": "XXXXXX-XXXX-XXXX-XXXX-XXXXXXX",
      "type": "Email",
      "data": {
        "subject": "Who is the father?",
        "bodyBlobUID": "00000000-0000-0000-0000-000000000000",
        "to": [
          "darth.vader@hotmail.com"
        ],
        "cc": [
          "luke.skywalker@nomail.com"
        ],
        "bcc": [
          "leia.skywalker@nomail.com"
        ],
        "encoding": "System.Text.UTF8Encoding",
        "isBodyHtml": false,
        "organisationUID": "00000000-0000-0000-0000-000000000000",
        "BlobUIDs": [
          "luke.skywalker@nomail.com"
        ]
      }
    }
  ]
}

所以我的问题分为两部分:

  • 1:是否可以在不使用HTTP请求的情况下添加JSON模式 触发使用服务总线?
  • 2:如果#1可能,或者可能 以另一种方式完成。我如何访问标签或参数 JSON格式?此刻我正在尝试使用转换 似乎是使用Integration帐户的模式和地图 不必要的。

1 个答案:

答案 0 :(得分:0)

更新:解析JSON 现在可在Logic Apps中使用。

下周我们将发布一个名为 JSON Parse 的操作,您可以在其中指定服务总线输出作为有效负载,定义有效负载的模式,然后在后续步骤中自定义友好令牌。