在 .net core 中为 Azure DevOps 创建 WebHook
Create a WebHook for AzureDevOps in .netcore
我正在尝试为我们的团队创建自定义 WebHook。当构建成功完成时,应调用此 WebHook。
我使用的步骤如下:
首先 我创建了一个 REST Api 这将是我的 WebHook,它看起来像这样:
[ApiController]
[Route("[controller]")]
public class WebHookController : ControllerBase
{
private readonly ILogger<WebHookController> _logger;
public WebHookController(ILogger<WebHookController> logger)
{
_logger = logger;
}
// POST: /webhook
[HttpPost]
public async Task<IActionResult> Post() // Which object should my endpoint expect from AzureDevOps?
{
try
{
// Some logic here based on projectId
}
catch (Exception ex)
{
_logger.LogError($"WebHookController: Post: {ex}");
}
return BadRequest();
}
}
第二 我会在某个地方托管这个 API 然后在 AzureDevOps 中注册这个 WebHook,如下所示:
我的问题:
在 Post
方法中,AzureDevOps 发送了什么对象?
我们提供一个按钮测试,您可以运行它来获取 Azure devops 发送的 JSON 是什么:
在运行进行测试后,我们的系统会运行一个虚拟管道发送一个请求。
如果尝试使用 Test
按钮,无需将有效的 URL 值输入 URL 空白。只要保持它不为空,因为它是必需的参数。
点击测试后,将选项卡更改为请求,您将看到您想要的内容:
我正在尝试为我们的团队创建自定义 WebHook。当构建成功完成时,应调用此 WebHook。
我使用的步骤如下:
首先 我创建了一个 REST Api 这将是我的 WebHook,它看起来像这样:
[ApiController]
[Route("[controller]")]
public class WebHookController : ControllerBase
{
private readonly ILogger<WebHookController> _logger;
public WebHookController(ILogger<WebHookController> logger)
{
_logger = logger;
}
// POST: /webhook
[HttpPost]
public async Task<IActionResult> Post() // Which object should my endpoint expect from AzureDevOps?
{
try
{
// Some logic here based on projectId
}
catch (Exception ex)
{
_logger.LogError($"WebHookController: Post: {ex}");
}
return BadRequest();
}
}
第二 我会在某个地方托管这个 API 然后在 AzureDevOps 中注册这个 WebHook,如下所示:
我的问题:
在 Post
方法中,AzureDevOps 发送了什么对象?
我们提供一个按钮测试,您可以运行它来获取 Azure devops 发送的 JSON 是什么:
在运行进行测试后,我们的系统会运行一个虚拟管道发送一个请求。
如果尝试使用 Test
按钮,无需将有效的 URL 值输入 URL 空白。只要保持它不为空,因为它是必需的参数。
点击测试后,将选项卡更改为请求,您将看到您想要的内容: