действительный соединитель HTTP, допустимый соединитель Blob, но нет файлов для загрузки? - PullRequest
0 голосов
/ 12 января 2019

У меня есть URL, который указывает на ZIP-файл, и я хочу иметь приложение логики, которое берет этот ZIP-файл и загружает его в BLOB-объект.

Я создал HTTP-действие с GET в качестве метода и проверил правильность URL-адреса, а полезная нагрузка (ZIP-файл) загружается, как и ожидалось, когда я перехожу по URL-адресу. Других данных в действии HTTP нет.

Я создал действие хранилища BLOB-объектов Azure, которое, как я подтвердил, может получать данные.

Я не могу понять синтаксис для фактического подключения действия HTTP для загрузки приблизительно 3 МБ ZIP-файла в хранилище BLOB-объектов Azure. Я пробовал каждую комбинацию динамических входов, но что-то не работает.

Код с удаленными секретными ключами и идентификационными данными:

{
"$connections": {
    "value": {
        "azureblob": {
            "connectionId": "/subscriptions/XXX/resourceGroups/Default-SQL-CentralUS/providers/Microsoft.Web/connections/azureblob",
            "connectionName": "azureblob",
            "id": "/subscriptions/XXX/providers/Microsoft.Web/locations/centralus/managedApis/azureblob"
        }
    }
},
"definition": {
    "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
    "actions": {
        "Create_blob": {
            "inputs": {
                "body": "@variables('fileAccessURL')",
                "headers": {
                    "Content-Type": "application/octet-stream"
                },
                "host": {
                    "connection": {
                        "name": "@parameters('$connections')['azureblob']['connectionId']"
                    }
                },
                "method": "post",
                "path": "/datasets/default/files",
                "queries": {
                    "folderPath": "/validis",
                    "name": "logicapptest",
                    "queryParametersSingleEncoded": true
                }
            },
            "runAfter": {
                "DownloadZIP": [
                    "Succeeded"
                ]
            },
            "runtimeConfiguration": {
                "contentTransfer": {
                    "transferMode": "Chunked"
                }
            },
            "type": "ApiConnection"
        },
        "DownloadZIP": {
            "inputs": {
                "method": "GET",
                "uri": "@variables('fileAccessURL')"
            },
            "operationOptions": "DisableAutomaticDecompression",
            "runAfter": {
                "SetFileAccessURL": [
                    "Succeeded"
                ]
            },
            "type": "Http"
        },
        "InitializeAccessToken": {
            "inputs": {
                "variables": [
                    {
                        "name": "access_token",
                        "type": "String"
                    }
                ]
            },
            "runAfter": {},
            "type": "InitializeVariable"
        },
        "InitializeFileAccessURL": {
            "inputs": {
                "variables": [
                    {
                        "name": "fileAccessURL",
                        "type": "String"
                    }
                ]
            },
            "runAfter": {
                "InitializeAccessToken": [
                    "Succeeded"
                ]
            },
            "type": "InitializeVariable"
        },
        "POST-AuthKey": {
            "inputs": {
                "body": "grant_type=vapi_key&key=XXX",
                "headers": {
                    "Content-Type": "application/x-www-form-urlencoded",
                    "Ocp-Apim-Subscription-Key": "XXX",
                    "cache-control": "no-cache"
                },
                "method": "POST",
                "uri": "https://api.sandbox.XXX.com/v1/oauth/token"
            },
            "runAfter": {
                "InitializeFileAccessURL": [
                    "Succeeded"
                ]
            },
            "type": "Http"
        },
        "RetrieveZIP_URL": {
            "inputs": {
                "headers": {
                    "Authorization": "@{concat('Bearer ',variables('access_token'))}",
                    "Ocp-Apim-Subscription-Key": "XXX",
                    "cache-control": "no-cache"
                },
                "method": "GET",
                "uri": "https://api.sandbox.XXX.com/v1/extracts/general-ledger/engagements/XXX"
            },
            "runAfter": {
                "SetAccessToken": [
                    "Succeeded"
                ]
            },
            "type": "Http"
        },
        "SetAccessToken": {
            "inputs": {
                "name": "access_token",
                "value": "@{body('POST-AuthKey').access_token}"
            },
            "runAfter": {
                "POST-AuthKey": [
                    "Succeeded"
                ]
            },
            "type": "SetVariable"
        },
        "SetFileAccessURL": {
            "inputs": {
                "name": "fileAccessURL",
                "value": "@{body('RetrieveZIP_URL').fileaccessurl}"
            },
            "runAfter": {
                "RetrieveZIP_URL": [
                    "Succeeded"
                ]
            },
            "type": "SetVariable"
        }
    },
    "contentVersion": "1.0.0.0",
    "outputs": {},
    "parameters": {
        "$connections": {
            "defaultValue": {},
            "type": "Object"
        }
    },
    "triggers": {
        "Recurrence": {
            "recurrence": {
                "frequency": "Month",
                "interval": 12
            },
            "type": "Recurrence"
        }
    }
}

}

...