Как создать общую папку запросов, используя vso-node-api (VSTS)?
В API VSTS Rest есть документация, показывающая, как создать папку. В частности, я хотел бы создать папку в папке Shared Queries. Кажется, что я могу сделать это с REST API.
Я хотел бы сделать то же самое с VSTS Node API (vso-node-api
). Самая близкая аналогичная функция, которую я могу найти, была бы WorkItemTrackingApi.createQuery
, Это правильная функция для использования?
Когда я пытаюсь использовать эту функцию, я получаю сообщение об ошибке:
Failed request: (405)
Это кажется странным, поскольку ошибка "Method Not Allowed" здесь не выглядит как правильная ошибка. Другими словами, я не тот человек, который решает, какой метод (GET/POST/...etc
), я просто вызываю функцию API-интерфейса узла VSTS, которая должна использовать правильный метод HTTP-запроса.
Я думаю, что код ошибки будет / должен быть другим, если что-то в моем запросе неверно (например, предоставление неверных параметров / данных).
Но я не удивлюсь, если VSTS не понравятся данные, которые я предоставил в запросе. Я написал следующую тестовую функцию:
async function createQueryFolder (QueryHeirarchyItem, projectId, query) {
let result = await (WorkItemTrackingApi.createQuery(QueryHeirarchyItem, projectId, query))
return result
}
Я установил некоторые переменные и вызвал функцию:
let projectID = properties.project // A previously set project ID that works in other API calls
let QueryHeirarchyItem = {
isFolder: true,
name: 'Test Shared Query Folder 1'
}
try {
let result = await createQueryFolder(QueryHeirarchyFunction, projectID, '')
Обратите внимание, что я предоставил пустую строку для запроса - я понятия не имею, что предоставить там, когда все, что я хочу создать, - это папка.
Итак, я думаю, что многие вещи могут быть неправильными с моим подходом здесь, но также, если мои параметры запроса неверны, возможно, я должен получить ошибку 400? 405 заставляет меня поверить, что API-интерфейс узла VSTS выполняет вызов REST, который не понимает базовый API-интерфейс REST VSTS.
1 ответ
Для третьего параметра createQueryFolder
, вы должны указать путь к папке, в которой вы хотите создать новую папку.
Например, если вы хотите создать папку Test Shared Query Folder 1
в разделе Общие запросы вы должны указать параметры для createQueryFolder
как:
let result = await createQueryFolder(QueryHeirarchyFunction, projectID, 'Shared Queries')