我正在尝试使用仪表板小部件中 Microsoft VSTS SDK 的 REST API 在 TFS 2015 Update 3 服务器上获取所有现有构建定义:
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 请求时,我得到了正确的响应:=/
$.get("http://*****:8080/tfs/TestReporting/DashboardWidgets/_apis/build/definitions?api-version=2.2").success(function(res) { console.log(res) })