使用“az eventgrid system-topic event-subscription”更新高级过滤器时,我应该提供什么端点?

问题描述

我尝试通过 az eventgrid system-topic event-subscription update 更新数据工厂 blobevent 触发器的高级过滤器。

它要求一个端点(实际上这是文档中的兼性),但如果我不说它,我会得到:

无效的事件订阅请求:提供的 URL 无效。这不可以 为 null 或为空,并且应该是正确的 HTTPS URL,例如 https://www.example.com

这是我的命令:

az eventgrid system-topic event-subscription update 
--system-topic-name $systemtopicname 
--name $topicName 
-g $ResourceGroup 
--endpoint $endpoint 
--advanced-filter data.api StringIn CreateFile PutBlob copyBlob

我查看了有关此端点的文档,据说它是 webhook 端点 (https://docs.microsoft.com/fr-fr/cli/azure/eventgrid/system-topic/event-subscription?view=azure-cli-latest)

EventGrid 应该传递与此事件匹配的事件的端点 订阅。对于 webhook 端点类型,这应该是 对应的网络钩子 URL。对于其他端点类型,这应该是 终结点的 Azure 资源标识符。预计该 目标端点已创建并可供使用 在执行任何事件网格命令之前。

![enter image description here

但它不起作用。

部署失败。关联 ID: 95e4fab5-163e-48ab-8cb2-b23432516e53。网络钩子验证握手 [主题中提供的 webwook 端点] 失败。 HTTP POST 请求失败,响应代码未知。如需故障排除,请访问 https://aka.ms/esvalidation

我也尝试过 az eventgrid event-subscription update,但都没有成功!

任何观察或建议都会很棒,提前致谢!

解决方法

用于更新事件订阅的 az 命令需要包含其查询参数的完整端点 URL。

使用带有可选参数的 az eventgrid system-topic event-subscription show 命令[--include-full-endpoint-url {false,true}] 获取 $ 的完整端点 URL端点变量。

请注意,用于更新 (PATCH) 事件订阅的 REST API 只能用于高级过滤属性。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...