Я копирую файл BLOB-объекта Azure из одной учетной записи хранилища BLOB-объектов в другую.У меня эта часть работает, но требование состоит в том, чтобы затем удалить файл BLOB из первой учетной записи хранения BLOB-объектов.
Я поместил файлы в переменную массива и выполняю цикл «для каждого» в массиве.чтобы получить файлы, а затем удалить их.Я получаю ошибку:
"status": 400,
"message": "The specified resource name length is not within the permissible limits.\r\nclientRequestId: 1e7ab499-56f5-4cd9-98c6-13738af47911",
"source": "azureblob-cus.azconn-cus.p.azurewebsites.net"
"$connections": {
"value": {
"azureblob": {
"connectionId": ".../Microsoft.Web/connections/azureblob",
"connectionName": "azureblob",
"id": "...Microsoft.Web/locations/centralus/managedApis/azureblob"
}
}
},
"definition": {
"$schema": ".../schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"Copy_blob": {
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['azureblob']['connectionId']"
}
},
"method": "post",
"path": "/datasets/default/copyFile",
"queries": {
"destination": "/blobtwo",
"overwrite": false,
"queryParametersSingleEncoded": true,
"source": "@triggerBody()?['Path']"
}
},
"runAfter": {
"For_each_2": [
"Succeeded"
]
},
"type": "ApiConnection"
},
"For_each": {
"actions": {
"Delete_blob1": {
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['azureblob']['connectionId']"
}
},
"method": "delete",
"path": "/datasets/default/files/@{encodeURIComponent(encodeURIComponent(items('For_each')))}"
},
"runAfter": {},
"type": "ApiConnection"
}
},
"foreach": "@variables('BlobArray')",
"runAfter": {
"Copy_blob": [
"Succeeded"
]
},
"type": "Foreach"
},
"For_each_2": {
"actions": {
"Append_to_array_variable": {
"inputs": {
"name": "BlobArray",
"value": "@items('For_each_2')"
},
"runAfter": {},
"type": "AppendToArrayVariable"
}
},
"foreach": "@body('List_blobs')?['value']",
"runAfter": {
"Initialize_variable": [
"Succeeded"
]
},
"type": "Foreach"
},
"Initialize_variable": {
"inputs": {
"variables": [
{
"name": "BlobArray",
"type": "Array"
}
]
},
"runAfter": {
"List_blobs": [
"Succeeded"
]
},
"type": "InitializeVariable"
},
"List_blobs": {
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['azureblob']['connectionId']"
}
},
"method": "get",
"path": "/datasets/default/foldersV2/@{encodeURIComponent(encodeURIComponent('/blobone'))}",
"queries": {
"useFlatListing": false
}
},
"metadata": {
"JTJmYmxvYm9uZQ==": "/blobone"
},
"runAfter": {},
"type": "ApiConnection"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
}
},
"triggers": {
"When_a_blob_is_added_or_modified_(properties_only)": {
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['azureblob']['connectionId']"
}
},
"method": "get",
"path": "/datasets/default/triggers/batch/onupdatedfile",
"queries": {
"folderId": "JTJmYmxvYm9uZQ==",
"maxFileCount": 10
}
},
"metadata": {
"JTJmYmxvYm9uZQ==": "/blobone"
},
"recurrence": {
"frequency": "Minute",
"interval": 3
},
"splitOn": "@triggerBody()",
"type": "ApiConnection"
}
}
}
Я не понимаю, что говорит мне ошибка.Foreach возвращает BLOB-объект, который я хочу удалить, но удаление не работает.Я новичок в лазури и пытаюсь понять переменные, поэтому, пожалуйста, прости мое невежество.
Джефф