Какой лучший способ получить элементы и столбцы панели задач?

#azure #azure-devops #azure-devops-rest-api #azure-boards

Вопрос:

Я пытаюсь получить элементы панели задач из azure devops с помощью его API (https://docs.microsoft.com/en-us/rest/api/azure/devops/work/taskboard work items/list?view=azure-devops-rest-6.1). Ну, эта штука работает нормально, пока я не отправлю запрос на вновь созданный проект/панель задач. Новый помечен как не настроенный и содержит несколько столбцов по умолчанию.

ПОЛУЧИТЬ https://dev.azure.com/{organization}/{project}/{team}/_apis/work/taskboardworkitems/{iterationId}?api-version=6.1-preview.1

Поэтому в случае столбцов по умолчанию приведенная выше конечная точка возвращает мне это:

 {
    "$id": "1",
    "innerException": null,
    "message": "Taskboard columns are not added. Customize the taskboard columns before accessing it.",
    "typeName": "Microsoft.TeamFoundation.Agile.Server.TaskBoard.TaskboardColumnNotCustomizedException, Microsoft.TeamFoundation.Agile.Server",
    "typeKey": "TaskboardColumnNotCustomizedException",
    "errorCode": 0,
    "eventId": 0
}
 

Однако в веб-приложении это хорошо работает даже с не настроенными столбцами. Итак, есть ли какой-либо известный обходной путь или что-то в этом роде для решения этой проблемы, или это ошибка API?

И я получаю аналогичную проблему с API столбцов панели задач.

ПОЛУЧИТЬ https://dev.azure.com/{организация}/{проект}/{команда}/_apis/работа/список задач?api-версия=6.0-предварительный просмотр.1

Эта конечная точка возвращает только пустой массив столбцов, хотя веб-приложение отображает список столбцов по умолчанию в зависимости от типа процесса проекта.

 {
    "columns": [],
    "isCustomized": false,
    "isValid": true
}
 

Ответ №1:

Я думаю, что есть проблема в API (предварительный просмотр). Можете ли вы попробовать обходной путь: параметры столбца goto на панели задач, добавьте все состояния ваших задач (для меня это было состояние «Удалено», которое отсутствовало) и, не обращая внимания на «состояние отображения», снова выполните запрос GET Api. теперь вы должны увидеть «нормальный» ответ. Продолжайте и удалите дополнительные столбцы добавленных состояний (верните параметры столбцов в предыдущее состояние) и повторите вызов Api. Теперь это должно сработать (по крайней мере, для меня это сработало).

Комментарии:

1. Спасибо за ваш ответ. Но проблема в том, что я пытаюсь создать приложение на основе API Azure DevOps. Таким образом, пользователи приложения не увидят ни одного элемента панели задач, пока не выполнят некоторые действия с существующим веб-приложением. И на самом деле конечная точка будет работать нормально, если вы просто измените имя какого-либо столбца, сохраните, отмените изменение и сохраните снова. Так что, похоже, это работает только с колонками, которые «настроены»: верно.

2. Привет @IvanHredil, Если этот ответ полезен, не могли бы вы, пожалуйста, принять его в качестве ответа ? Таким образом, это могло бы помочь другим членам сообщества, у которых возникают те же проблемы, и мы могли бы заархивировать эту тему. Спасибо. Хорошего вам дня. 🙂

3. Кроме того, этот rest API недавно добавлен. у него просто предварительная версия, документ должен быть обновлен в будущем, мы могли бы следить за документом, чтобы получать последние новости.