簡體   English   中英

如何從Logic App發送文件到功能應用程序?

[英]How to send File from Logic App to function App?

我有一個邏輯應用程序,它讀取郵件內容及其附件。 我需要將文件/文件內容(文件首選)發送到功能App。

后來的功能App與第三方API交互,需要將相同的文件傳遞給該API。

NB - >我能夠在Logic App中獲取文件字節。 但是在通過Json結構將Bytes傳遞給函數App時,Json反序列化顯示了@function App end的問題。

您可以將文件從邏輯應用程序發送到azure函數作為附件內容。 在此輸入圖像描述

在Azure功能方面,您可以直接讀取它,如下所示:

#r "Newtonsoft.Json"

using System;
using System.Net;
using Newtonsoft.Json;
using System.IO;
using System.Globalization;

public static async Task<object> Run(HttpRequestMessage req, TraceWriter log)
    {
        try
        {
            log.Info($" my function was triggered!");

            string jsonContent = await req.Content.ReadAsStringAsync();
            dynamic data = JsonConvert.DeserializeObject(jsonContent);

            if (data.fileName == null && string.IsNullOrWhiteSpace(data.fileName))
            {
                return req.CreateResponse(HttpStatusCode.BadRequest, new
                {
                    error = "Invalid json parameters!"
                });
            }
            string fileName = data.fileName;
            var fileData = data.fileContent;
            string val = fileData.ToObject<string>();

            var base64EncodedBytes = System.Convert.FromBase64String(val);
            var result = System.Text.Encoding.UTF8.GetString(base64EncodedBytes);
            // log.Info($"file data val : "+result);
            StringReader stringReader = new StringReader(result);
            //rest you can do yourself
        }
        catch (Exception ex)
        {

        }
    }

希望這可以幫助。

我會使用Azure Blob Storage作為Logic App和Function App之間的接口。

在Logic App中,可以使用Azure Blob Storage標准連接器,如本文檔所述 可以使用Create Blob操作,該操作需要您可以檢索的文件字節。

功能應用程序可以綁定為特定Azure Blob存儲容器的觸發器。 這是一個例子

[FunctionName("BlobTrigger")]        
public static void Run([BlobTrigger("blobcontainer/{name}", Connection = "StorageConnectionAppSetting")] Stream myBlob, string name, TraceWriter log)
{
    log.Info($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM