我要离开这里的文档:https : //docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob-output?tabs=python
这是我目前拥有的代码:
函数.json
{
"bindings": [
{
"queueName": "myqueue-items",
"connection": "nameofstorageaccount_STORAGE",
"name": "queuemsg",
"type": "queueTrigger",
"direction": "in"
},
{
"name": "inputblob",
"type": "blob",
"dataType": "binary",
"path": "samples-workitems/{queueTrigger}",
"connection": "nameofstorageaccount_STORAGE",
"direction": "in"
},
{
"name": "outputblob",
"type": "blob",
"dataType": "binary",
"path": "samples-workitems/{queueTrigger}-Copy",
"connection": "nameofstorageaccount_STORAGE",
"direction": "out"
}
],
"disabled": false,
"scriptFile": "__init__.py"
}
初始化文件
import logging
import azure.functions as func
def main(queuemsg: func.QueueMessage, inputblob: bytes, outputblob: func.Out[bytes]):
logging.info(f'Python Queue trigger function processed {len(inputblob)} bytes')
outputblob.set(inputblob)
如果我的理解正确,则应该在将 blob 添加到容器时触发此函数,并将该 blob 的副本保存在同一容器中。
函数运行,但是当 blob 上传到容器时没有任何反应?我想用上传的 blob 触发一些代码,这是我发现的唯一一个使用 Python 和 Blob 触发器的完整示例。
感谢任何帮助,谢谢!:)
不。如果您阅读document
,它会说明该功能在将消息发送到队列时触发:
以下示例显示了 function.json 文件中的 blob 输入和输出绑定以及使用这些绑定的 Python 代码。该函数创建一个 blob 的副本。该函数由包含要复制的 blob 名称的队列消息触发。新 blob 名为 {originalblobname}-Copy。
如果要在创建 blob 时执行函数,请参见Blob Trigger
此处的示例:https : //docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob-trigger?tabs=蟒蛇。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句