【问题标题】:How to send array from Web Activity of ADF to Logic App Webhook?如何将数组从 ADF 的 Web Activity 发送到 Logic App Webhook?
【发布时间】:2021-11-16 15:36:41
【问题描述】:

我尝试从 Web Activity Azure 数据工厂发送列表,但我无法将列表/数组正确传递给 webhook。请指教!

我以本教程为基础:

   https://www.youtube.com/watch?v=ttmETFGYSLg

我在 Azure 数据工厂发布以下正文中的 Web 活动:(这工作正常)

  {
  "ListOfTestNames:" : @{variables('Test_name_list')}
 }

我有“收到 HTTP 请求时”的逻辑应用。方法设置为 Post 并且架构如下:

 {
  "properties": {
    "ListOfTestNames": {
      "type": "array"
    }
},
"type": "object"
}

我在逻辑应用中有 HTTP Webhook。这工作正常并返回包括 ListOfTestName 的正文

       @{triggerBody()}

我在逻辑应用中有 HTTP Webhook:这不会返回任何内容。我想知道为什么?

       @{triggerBody()?['ListOfTestNames']} 

我尝试了数组和字符串类型

逻辑应用代码:(由设计师生成) {

    "definition": {
        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
        "actions": {
            "HTTP_Webhook": {
                "inputs": {
                    "subscribe": {
                        "body": {
                            "blocks": [
                                {
                                    "text": {
                                        "text": "*These are list of names* \n ListOfTestNames @{triggerBody()?['ListOfTestNames:']}   ",
                                        "type": "mrkdwn"
                                    },
                                    "type": "section"
                                },
                                {
                                    "text": {
                                        "text": "There is currently bug and list of names are not displayed ",
                                        "type": "mrkdwn"
                                    },
                                    "type": "section"
                                }
                            ]
                        },
                        "method": "POST",
                        "uri": "https://hooks.slack.com/services/11111111111111111111111111111111111111111"
                    },
                    "unsubscribe": {}
                },
                "runAfter": {},
                "type": "HttpWebhook"
            }
        },
        "contentVersion": "1.0.0.0",
        "outputs": {},
        "parameters": {},
        "triggers": {
            "manual": {
                "inputs": {
                    "method": "POST",
                    "schema": {
                        "properties": {
                            "ListOfTestNames:": {
                                "type": "array"
                            }
                        },
                        "type": "object"
                    }
                },
                "kind": "Http",
                "type": "Request"
            }
        }
    },
    "parameters": {}
}

【问题讨论】:

    标签: azure-logic-apps


    【解决方案1】:

    在我们重现问题后,我们发现您使用的表达式无效,但是当我们尝试使用时它起作用了

     @triggerBody()?['ListOfTestNames'] 
    

    但在使用时不会

     @{triggerBody()?['ListOfTestNames']} 
    

    以下是截图供您参考:

    • 当使用@triggerBody()?['ListOfFiles'] 时:

    • 当使用@triggerBody() 时:

    【讨论】:

    • 我使用了设计器,它是由逻辑应用程序自动形成的。怎么改?@{triggerBody()?['ListOfTestNames']}
    • 您可以从代码视图中更改它
    • 我从代码中删除了 { 和 },结果设计人员将 ListOfNames 变成了文本而不是动态内容。
    • 您在代码视图中提到 @triggerBody()?['ListOfTestNames'] 对吗?您还介意分享您的逻辑应用的代码视图吗?
    • 我已经添加了代码。谢谢你帮忙。这真的很奇怪,我从 ListOfNames 中没有得到任何价值
    猜你喜欢
    • 2021-06-16
    • 2019-10-20
    • 1970-01-01
    • 2013-09-27
    • 2018-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多