【问题标题】:Using SFTP File Content in Azure Logic Apps在 Azure 逻辑应用中使用 SFTP 文件内容
【发布时间】:2017-10-17 12:30:48
【问题描述】:

在 SFTP 文件夹中添加或修改新文件时,我必须将文件名和文件内容传递给 Azure 函数。我能够传递它们,但文件内容作为复杂类型 json 传递,如下所示:

{
  "fileContent": {
    "$content-type": "application/octet-stream",
    "$content": "QWxvZnQgQidoYW0gU29obyBTcSAgICAg=="
  },
  "fileName": "testFile"
}

我只需要将 $content 传递给 Azure Function。我当前的代码在逻辑应用程序中如下所示

"body": {
                            "fileContent": "@triggerBody()",
                            "fileName": "@triggerOutputs()['headers']['x-ms-file-name']"
                        },

如何仅将 FileContent 中的内容传递给 Azure 函数?

【问题讨论】:

    标签: azure-logic-apps


    【解决方案1】:

    您应该能够按原样传递内容。逻辑应用程序将解码数据并将其作为二进制文件传递给 azure 函数(假设该函数可以接受二进制内容)。您可以将文件名作为标题传递。

    如果要将内容作为属性附加到对象上,则可以使用

    "body": {
      "fileContent": "@base64(triggerBody())",
      "fileName": "@triggerOutputs()['headers']['x-ms-file-name']"
    }
    

    【讨论】:

    • 将测试并返回。谢谢你:)
    【解决方案2】:

    如您所见,您获得了一个 $content 属性,因此您只需要访问该属性,并且由于是 Base64 编码,您需要对其进行解码。试试这个

    "body": {
              "fileContent": "@base64ToString(triggerBody()['$content'])",
              "fileName": "@triggerOutputs()['headers']['x-ms-file-name']"
    },
    

    HTH

    【讨论】:

      猜你喜欢
      • 2018-12-13
      • 2021-06-06
      • 1970-01-01
      • 2021-02-18
      • 1970-01-01
      • 2023-01-18
      • 1970-01-01
      • 1970-01-01
      • 2020-04-18
      相关资源
      最近更新 更多