Azure Powershell 函数应用程序与 Blob 交互
Azure Powershell Function App Interacting with Blob
对 Azure 和 Function Apps 非常陌生。
我正在尝试使用 Powershell 设置一个简单的 Function 应用程序,它需要从 blob(简单的 .txt 文件)中读取内容,对其进行一些简单的处理并将该文件的副本写入不同的 blob .
到目前为止,我已经在应用程序上设置了集成,我可以看到它提供了我可以使用的绑定。看起来像这样:
{
"name": "inputBlob",
"direction": "in",
"type": "blob",
"path": "input/logs.txt",
"connection": "AzureWebJobsStorage"
}
我在脚本开头的 powershell 参数中引用了该绑定:
# Input bindings are passed in via param block.
param($Request, $TriggerMetadata, $inputBlob)
据我所知,这应该允许我连接到那个 blob 并与之交互。我不明白的是应该怎么做?我尝试使用似乎最适合这种情况的 cmdlet:Get-AzStorageBlobContent
例如:
$blobContent = Get-AzStorageBlobContent -name $inputBlob
但是当我尝试 return 我的 http 响应中的内容(这样我可以检查它是否已被读取)时,响应正文是空的。
我想我还需要添加更多绑定以输出到 blob 吗?
例如,Set-AzStorageBlobContent cmdlet 似乎只支持 'files' 但在我的情况下,在函数应用程序中,我没有文件,只有字符串或数组,所以我该如何将该内容推送到目标 blob 中?
非常感谢有关如何实现此目标的任何指示,
$inputBlob
变量应包含字节数组形式的 blob 数据,因此您可以:
foreach ($value in $inputBlob) { ... }
或者任何你想用字节数组做的事情。
如果需要输出到blob,需要添加输出绑定:
{
"name": "myOutputBlob",
"type": "blob",
"path": "output/data.txt",
"connection": "AzureWebJobsStorage",
"direction": "out"
}
并将数据从您的函数代码推送到此绑定:
Push-OutputBinding -Name myOutputBlob -Value 'my value'
对 Azure 和 Function Apps 非常陌生。
我正在尝试使用 Powershell 设置一个简单的 Function 应用程序,它需要从 blob(简单的 .txt 文件)中读取内容,对其进行一些简单的处理并将该文件的副本写入不同的 blob .
到目前为止,我已经在应用程序上设置了集成,我可以看到它提供了我可以使用的绑定。看起来像这样:
{
"name": "inputBlob",
"direction": "in",
"type": "blob",
"path": "input/logs.txt",
"connection": "AzureWebJobsStorage"
}
我在脚本开头的 powershell 参数中引用了该绑定:
# Input bindings are passed in via param block.
param($Request, $TriggerMetadata, $inputBlob)
据我所知,这应该允许我连接到那个 blob 并与之交互。我不明白的是应该怎么做?我尝试使用似乎最适合这种情况的 cmdlet:Get-AzStorageBlobContent
例如:
$blobContent = Get-AzStorageBlobContent -name $inputBlob
但是当我尝试 return 我的 http 响应中的内容(这样我可以检查它是否已被读取)时,响应正文是空的。
我想我还需要添加更多绑定以输出到 blob 吗?
例如,Set-AzStorageBlobContent cmdlet 似乎只支持 'files' 但在我的情况下,在函数应用程序中,我没有文件,只有字符串或数组,所以我该如何将该内容推送到目标 blob 中?
非常感谢有关如何实现此目标的任何指示,
$inputBlob
变量应包含字节数组形式的 blob 数据,因此您可以:
foreach ($value in $inputBlob) { ... }
或者任何你想用字节数组做的事情。
如果需要输出到blob,需要添加输出绑定:
{
"name": "myOutputBlob",
"type": "blob",
"path": "output/data.txt",
"connection": "AzureWebJobsStorage",
"direction": "out"
}
并将数据从您的函数代码推送到此绑定:
Push-OutputBinding -Name myOutputBlob -Value 'my value'