我试图在Mac上本地运行Azure函数,并出现以下错误:The binding type(s) 'blobTrigger' are not registered. Please ensure the type is correct and the binding extension is installed.
我正在使用Python 3.6.8
,并且已经使用自制软件(azure-functions-core-tools
)安装了brew tap azure/functions; brew install azure-functions-core-tools
。
使用预期的配置设置我的local.settings.json
文件,因此功能应侦听Azure中托管的正确存储容器。
我确定自上周以来我没有更改任何代码或配置文件。
host.json文件包含:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[1.*, 2.0.0)"
}
}
function.json文件包含:
{
"scriptFile": "__init__.py",
"bindings": [
{
"name": "xmlblob",
"type": "blobTrigger",
"direction": "in",
"path": "<directory>/{name}",
"connection": "AzureStorageAccountConnectionString"
}
]
}
requirements.txt文件包含:
azure-cosmos==3.1.0
azure-functions-worker==1.0.0b6
azure-storage==0.36.0
azure-storage-blob==2.0.1
xmljson==0.2.0
xmlschema==1.0.11
然后我在终端中运行以下命令:
1) pip install -r requirements.txt
2) source .env/bin/activate
3) func host start
然后我得到以下错误:
<Application name>: The binding type(s) 'blobTrigger' are not registered. Please ensure the type is correct and the binding extension is installed.
答案 0 :(得分:1)
您从外观上所做的一切都正确,但是您需要在本地安装dotnet核心框架和运行时才能执行触发器。
对于在Ubuntu上的我,我关注了this guide。安装后,我可以在本地触发Blob函数。
对于Mac,我会take a look here关于安装dotnot core。
答案 1 :(得分:0)
答案 2 :(得分:0)
我收到此错误,是因为它下载并缓存的捆绑软件有问题。除了错误消息外,日志中较早的地方还警告您无法加载扩展捆绑包,而日志较早的几行则显示了从中加载捆绑包的路径,例如C:\ Users