Azure Functions 的 Azure 事件网格绑定

本参考介绍了如何在 Azure Functions 中处理事件网格事件。 有关如何在 HTTP 终结点中处理事件网格消息的详细信息,请参阅将事件接收到 HTTP 终结点

事件网格是一个 Azure 服务,它可以发送 HTTP 请求来告知发布方中发生的事件情况。 发布方是发起事件的服务或资源。 例如,Azure Blob 存储帐户是发布方,而 Blob 上传或删除是事件。 某些 Azure 服务原生支持向事件网格发布事件

事件处理程序接收并处理事件。 Azure Functions 是原生支持处理事件网格事件的多个 Azure 服务之一。 在本参考中,你将了解如何使用事件网格触发器在从事件网格接收到事件时调用函数,并使用输出绑定将事件发送到事件网格自定义主题

如果愿意,你可以使用 HTTP 触发器处理事件网格事件;请参阅将事件接收到 HTTP 终结点。 目前,在以 CloudEvents 架构传递事件时,无法为 Azure Functions 应用使用事件网格触发器。 应转而使用 HTTP 触发器。

操作 类型
在调度事件网格事件时运行函数 触发器
发送事件网格事件 输出绑定

本参考中的代码默认使用 .NET Core 语法,该语法在 Functions 2.x 版及更高版本中使用。 有关 1.x 语法的信息,请参阅 1.x functions 模板

添加到 Functions 应用

Functions 2.x 及更高版本

使用触发器和绑定需要引用相应的包。 NuGet 包用于 .NET 类库,而扩展捆绑包用于其他所有应用程序类型。

语言 添加方式... 备注
C# 安装 NuGet 包版本 2.x
C# 脚本、Java、JavaScript、Python、PowerShell 注册扩展捆绑包 建议将 Azure Tools 扩展用于 Visual Studio Code。
C# 脚本(Azure 门户中仅限联机) 添加绑定 若要更新现有绑定扩展而不必重新发布函数应用,请参阅更新扩展

事件网格扩展 3.x 及更高版本

新版本的事件网格绑定扩展以预览版 NuGet 包的形式提供。 对于 .NET 应用程序,它会更改你可以绑定到的类型,并将 Microsoft.Azure.EventGrid.Models 中的类型替换为 Azure.Messaging.EventGrid 中的新类型。

备注

预览包不包括在扩展捆绑包中,必须手动安装。 对于 .NET 应用,请添加对包的引用。 对于所有其他应用类型,请参阅更新扩展

Functions 1.x

Functions 1.x 应用会自动引用 Microsoft.Azure.WebJobs NuGet 程序包(版本 2.x)。

后续步骤