You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Azure DevOps webhook仅在Bug描述变更时触发POST请求

回答

原生Webhook能力边界

Azure DevOps 原生的Webhook配置界面不支持直接设置「仅Bug的描述字段变更时触发」的规则。
你当前打开的「工作项更新」类Webhook配置页,仅支持粗粒度的触发筛选:

  • 可筛选触发的工作项类型为Bug
  • 可筛选指定区域、迭代路径下的工作项
  • 仅内置了Discussion(讨论区)变更、关联工作项变更等固定触发条件,没有开放普通业务字段(包括描述字段)的细粒度触发选项,你在界面上找不到对应配置是正常的功能限制,不是操作问题。

可行的实现方案

你可以选两种方式实现需求:

  • 方案1:Webhook+接收端二次过滤
    先按现有配置把Webhook设为「Bug类型工作项更新时即触发」,在你接收POST请求的服务端加一层校验逻辑:Azure DevOps发送的Webhook payload中会明确携带本次更新涉及的所有变更字段,你判断描述字段(内部字段名System.Description)是否在变更字段列表中,如果不在就直接丢弃请求不处理,只有检测到描述字段确实发生变更时,再执行你的后续业务逻辑。这个方案实现成本最低,不需要额外配置平台规则。
  • 方案2:用工作项规则实现细粒度触发
    不使用通用Webhook功能,转而在项目设置-工作项规则中新建自定义规则:
    1. 触发条件设为「工作项已更新」
    2. 附加条件设为「工作项类型 = Bug,且描述字段的值发生更改」
    3. 触发动作选择「调用外部HTTP服务」,填入你要发送POST请求的目标地址和参数格式即可。
      这个方案是平台原生支持的细粒度触发,不需要自己在接收端做过滤。

关于等效字段的说明

Discussion字段对应的内部存储字段是System.History,专门用来保存工作项下的评论、讨论记录,和描述字段是完全独立的两个系统字段,不存在其他和Discussion触发逻辑等效的字段可以直接替代实现描述字段变更触发的规则,也没有办法在原生Webhook配置界面手动添加自定义字段作为触发筛选条件。


内容的提问来源于stack exchange,提问作者Fernando Ferreira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 23:13:00