Я пытаюсь получить все существующие определения опираться на 2015 Update 3 сервера TFS с использованием REST API из Microsofts VSTS SDK в приборной панели виджетов:Как получить определения сборки из TFS с использованием REST API в виджетах VSTS?
VSS.init({
explicitNotifyLoaded: true,
usePlatformStyles: true
});
VSS.require("TFS/Dashboards/WidgetHelpers", "TFS/Build/RestClient", "VSS/Authentication/Services"],
function (WidgetHelpers, TFS_Build_Api) {
VSS.register("BuildStatusMonitor.Configuration", function() {
return {
load: function (widgetSettings, widgetConfigurationContext) {
var buildClient = TFS_Build_Api.getClient();
buildClient.getDefinitions().then(function(definition) {
//
}, function(reason) {
// 401
});
},
}
});
VSS.notifyLoadSucceeded();
});
К сожалению, я всегда получаю
TFS.WebApi.Exception: TF400813: Ресурс недоступен для анонимного доступа. Требуется аутентификация клиента.
Что я делаю неправильно?
Когда я посылаю запрос получить на консоли chromes разработчика, я получаю правильный ответ: =/
$ .get ("HTTP: // *****: 8080/TFS/TestReporting /DashboardWidgets/_apis/build/definitions?api-version=2.2").success(function(res) {console.log (разреш)})
ли вы указать область в выдвижении манифеста: https://www.visualstudio.com/en-us/docs/integrate/extensions/develop/add-dashboard-widget#step- 2-доступ-VSTS-ресурсы? –
ОК, это неловко. Спасибо, Эдди, я действительно забыл объявить область vso.build. Вы возлагали мои надежды! Хотя, к сожалению, добавление области не решает проблему. Я переустановил расширение, но проблема остается. – simarust
Нашел мою ошибку. Просто не разрешено запрашивать ** все ** определения сборки. Вызов buildClient.getDefinitions ("projectName") работает отлично. И все же большое спасибо вашей помощи, особенно Эдди за то, что он напомнил мне о настройке области ...;) – simarust