Azure 逻辑应用程序 - 如何上传 pdf 内容

问题描述 投票:0回答:3

您好,我有一个查找电子邮件附件的逻辑应用程序,我发出了一个 HTTP 请求,将此文件上传到临时 blob 存储中。当我打开 pdf 文件时,它是空的。

我有一个变量,用于放置文件内容并将其作为 HTTP 请求中的正文发送,它看起来像这样

我需要上传任何类型的文件,但只有非文本文件才会出现此问题

azure file pdf azure-logic-apps is-empty
3个回答
0
投票

我已经在我的环境中重现并得到预期结果如下:

Design:

您有一个名为

Azure blob Storage
的连接器(在该连接器中,您可以使用名为
Create blob (V2)
的操作,如下所示):

enter image description here

Output:

enter image description here

在存储帐户中:

enter image description here

Codeview:

{
    "definition": {
        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
        "actions": {
            "Create_blob_(V2)": {
                "inputs": {
                    "body": "@variables('var1')",
                    "headers": {
                        "ReadFileMetadataFromServer": true
                    },
                    "host": {
                        "connection": {
                            "name": "@parameters('$connections')['azureblob_1']['connectionId']"
                        }
                    },
                    "method": "post",
                    "path": "/v2/datasets/@{encodeURIComponent(encodeURIComponent('AccountNameFromSettings'))}/files",
                    "queries": {
                        "folderPath": "/rithwik",
                        "name": "rithblob",
                        "queryParametersSingleEncoded": true
                    }
                },
                "runAfter": {
                    "Initialize_variable": [
                        "Succeeded"
                    ]
                },
                "runtimeConfiguration": {
                    "contentTransfer": {
                        "transferMode": "Chunked"
                    }
                },
                "type": "ApiConnection"
            },
            "Initialize_variable": {
                "inputs": {
                    "variables": [
                        {
                            "name": "var1",
                            "type": "string",
                            "value": " ۝ $\u0011 W$H: A   XPg   k\u0003\u0001v i 8 \u001c  K5u\u0003   G ƥ֋\u001d B p  b  \\  nړ1  $N ;\u000e _x\u0011  /  \u0001\t \u0006\u0003*\u001b-N\u001cP`  @ ,p zOW5 絒 \u001a\u000e' \u0006 \u0004\u000b R\u000e Z p  \u0015 C a\u0017   \f\n ! 6z3  3  \n/ = > \u0005  w@  \u001eX?  \u0017    O  `  & .  _iΓi n     +\u000f  Hj2_\" k +\u000e\f  ç   U  \u0006 sտ\u0013j/  .򌿸 o : P W O  95  T $ug  \u001fZBm / C\u000e\u0016詷U пb  [\u0011 ʒ\n\u000f E %gW#   -\n AV//gJ' \u0014~  -\u0004 \u0015  \u001c tpi   ͟[qʍi   o  \u001e \u001e ab\u0001["
                        }
                    ]
                },
                "runAfter": {},
                "type": "InitializeVariable"
            }
        },
        "contentVersion": "1.0.0.0",
        "outputs": {},
        "parameters": {
            "$connections": {
                "defaultValue": {},
                "type": "Object"
            }
        },
        "triggers": {
            "manual": {
                "inputs": {
                    "schema": {}
                },
                "kind": "Http",
                "type": "Request"
            }
        }
    },
    "parameters": {
        "$connections": {
            "value": {
                "azureblob_1": {
                    "connectionId": "/subscriptions/b83c1ed3/resourceGroups/vrbojja/providers/Microsoft.Web/connections/azureblob-1",
                    "connectionName": "azureblob-1",
                    "id": "/subscriptions/b83c1ed3/providers/Microsoft.Web/locations/eastus/managedApis/azureblob"
                }
            }
        }
    }
}

0
投票

你可以这样做:

创建一个如下所示的逻辑应用程序,这意味着您需要有一个存储帐户和一个用于存储文件的容器

如果您没有容器,只需创建一个容器

接下来,如您所见,我正在从 google 帐户向 Outlook 帐户发送一封带有 PDF 附件的电子邮件。

在这里你可以看到我已经在 Outlook 中收到了它

现在逻辑应用程序将运行,因为它需要带有附件的电子邮件,如果您现在检查您的 blob 容器,您可以看到那里有该文件,下载后您会看到它是完整的。

希望这有帮助,如果您需要更多帮助,请告诉我。 (还没有声誉点,最近才开始在 stack Overflow 中做出贡献,所以我只能分享 8 个链接,没有图片,如果这对你有帮助,请点赞:) )

01

02

03

04

05

06

07

08


0
投票

不确定这是否是完全相同的问题,我正在使用不同的逻辑应用程序操作,但我能够通过首先将内容从 base64 转换为二进制来解决此问题 Conversion of a PDF filecontent using @base64ToBinary

© www.soinside.com 2019 - 2024. All rights reserved.