如何获取使用 Python 触发我的 Azure 函数的 inputBlob 的名称
问题描述
我有一个 azure 函数,该函数由放入 blob 存储的文件触发,我想知道如何(如果可能)获取触发该函数的 blob(文件)的名称,我尝试过这样做:
I have an azure function which is triggered by a file being put into blob storage and I was wondering how (if possible) to get the name of the blob (file) which triggered the function, I have tried doing:
fileObject=os.environ['inputBlob']
message = "Python script processed input blob'{0}'".format(fileObject.fileName)
和
fileObject=os.environ['inputBlob']
message = "Python script processed input blob'{0}'".format(fileObject.name)
但这些都不起作用,它们都导致了错误.我可以得到一些帮助或一些建议吗?
but neither of these worked, they both resulted in errors. Can I get some help with this or some suggesstions?
谢谢
解决方案
可以通过 Function.json 捕获 Blob 名称并作为绑定数据提供.请参阅下面的 {filename} 令牌.Function.json 与语言无关,适用于所有语言.
The blob name can be captured via the Function.json and provided as binding data. See the {filename} token below. Function.json is language agnostic and works in all languages.
请参阅 https://docs 上的文档.microsoft.com/en-us/azure/azure-functions/functions-triggers-bindings 了解详情.
{
"bindings": [
{
"name": "image",
"type": "blobTrigger",
"path": "sample-images/{filename}",
"direction": "in",
"connection": "MyStorageConnection"
},
{
"name": "imageSmall",
"type": "blob",
"path": "sample-images-sm/{filename}",
"direction": "out",
"connection": "MyStorageConnection"
}
],
}
相关文章