#azure-devops #devops #webhooks #asp.net-core-5.0
#azure-devops #devops #веб-хуки #asp.net-core-5.0
Вопрос:
Я работаю над ASP.NET Проект Core 5, который будет использовать подписку на перехваты служб Azure DevOps моей организации (Webhooks). Я проанализирую данные полезной нагрузки события (и метаданные).
Я проверил, какие полезные нагрузки событий содержатся здесь: https://docs.microsoft.com/en-us/azure/devops/service-hooks/events?view=azure-devops#workitem.updated
А также скачал этот пакет NuGet: https://www.nuget.org/packages/Microsoft .AspNet.Веб-хуки.Receivers.vsts
Но есть проблема. Я не могу найти (в документах, а также в пакете NuGet) Поле «Описание» рабочего элемента или поля «Этапы воспроизведения» ошибки. Эти два поля являются наиболее важными полями из полезной нагрузки для моего проекта.
Эти поля где-то скрыты? Или можно включить эти поля в полезную нагрузку?
Ответ №1:
После запроса типов рабочих элементов Список полей rest api, который использовался для получения списка полей для типа рабочего элемента с подробными ссылками.
{
"alwaysRequired": false,
"defaultValue": null,
"allowedValues": [],
"dependentFields": [],
"referenceName": "System.Description",
"name": "Description",
"url": "https://dev.azure.com/fabrikam/_apis/wit/fields/System.Description"
},
referenceName поля описания должно быть System.Description
.
Как вы указали, кажется, это не включено в полезную нагрузку события webhook.
Возможно, вам придется использовать Rest API рабочего элемента для запроса соответствующей информации.
Комментарии:
1. Хорошо, я понимаю, что это не может быть так просто. Поэтому я не могу использовать веб-хуки, и мне нужно использовать Rest API для извлечения этих полей. Это немного сложно, потому что я думаю, что мне нужно будет включить некоторые значения для безопасности (я думаю, oauth2?). Пожалуйста, какие значения я должен запросить у владельца моей организации для авторизации запросов и как их авторизовать? Как получить значения полей конкретного рабочего элемента с помощью руководства по предоставленной вами ссылке? Разве мне не нужно было это ?
2. @Anakkiin Да, это тот Rest API. Службы Azure DevOps используют протокол OAuth 2.0 для авторизации вашего приложения для пользователя и создания токена доступа. Используйте этот токен при вызове API-интерфейсов REST из вашего приложения. Для получения более подробной информации вы можете обратиться по этой ссылке: docs.microsoft.com/en-us/azure/devops/integrate/get-started /… . Просто токен доступа, убедитесь, что у этого токена есть разрешение на рабочие элементы.