我可以在发布功能之前为Azure功能应用创建事件网格订阅吗?

时间:2020-04-22 12:46:34

标签: azure azure-functions azure-eventgrid azure-function-app

我一直在尝试创建事件网格触发器功能的事件网格订阅,该功能被创建为使用ARM模板捕获Blob存储事件。我先成功创建了功能应用程序资源,然后尝试在已创建的功能应用程序上创建事件网格订阅,但失败并显示以下错误:

    "error": {
    "code": "ResourceDeploymentFailure",
    "message": "The resource operation completed with terminal provisioning state 'Failed'.",
    "details": [
      {
        "code": "Url validation",
        "message": "The attempt to validate the provided endpoint https://myfunction.azurewebsites.net/runtime/webhooks/eventgrid failed. For more details, visit https://aka.ms/esvalidation."
      }
    ]
  }

在这里,我已使用webhook URL作为端点。我知道有一个验证调用可以返回到功能应用程序以验证其存在。

我的问题是,我们是否需要在之前将事件网格触发器功能发布到功能应用程序?

P.S。我也尝试过使用AzureFunction与终结点类型(2020-01-01 version)相同的顺序,但是仍然无法创建订阅。

1 个答案:

答案 0 :(得分:1)

基于here中所述的验证详细信息:

At the time of event subscription creation/update, Event Grid posts a subscription validation event to the target endpoint

作为一种解决方法,您可以使用虚拟(nop操作)订户处理程序端点来创建您的订阅,然后使用您的真实订户处理程序端点更新Webhook端点。