我想知道是否可以将angularjs添加到Rally中的自定义应用程序,或者作为替代方法如何从Rally Custom应用程序调用REST服务。有人可以帮我弄这个吗?提前谢谢。
最好的问候
答案 0 :(得分:0)
以下是从Rally自定义页面内部的Angular应用程序进行WS API调用的示例:
<!DOCTYPE html>
<html lang="en-US">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
</head>
<body>
<div ng-app="myapp">
<p>Name : <input type="text" ng-model="name"></p>
<h1>Hello {{name}}</h1>
<div ng-controller="MyController" >
<button ng-click="myData.doClick(item, $event)">Send AJAX Request to Rally</button>
<br/>
Data from server: {{myData.fromServer}}
</div>
<script>
angular.module("myapp", [])
.controller("MyController", function($scope, $http) {
$scope.myData = {};
$scope.myData.doClick = function(item, event) {
var responsePromise = $http.get("https://rally1.rallydev.com/slm/webservice/v2.0/defect");
responsePromise.success(function(data, status, headers, config) {
$scope.myData.fromServer = data.QueryResult.Results[0];
console.log(data);
});
responsePromise.error(function(data, status, headers, config) {
alert("AJAX failed!");
});
}
} );
</script>
</div>
</body>
</html>
如果通过http访问,在app中使用外部CDN会产生混合内容错误。如果使用https,它可以工作。这是第一个查询结果(来自我当前项目的缺陷)。