我试图创建一个 AJAX 请求,它将调用json URL,解析它,然后对于每个URL属性(在这个json中)将执行这个属性的json请求,然后带回我的版本字段和id。
这是我写的代码:
$(document).ready(function () {
$.ajax({
url:'http://build-20003.eu1.kokol.com:8080/job/ios_sdk/api/json?pretty=true&tree=builds[*]',
method: 'GET',
headers: {'authorization': 'Basic ' + btoa('elior:3cbe5b03748e8f3f800e')}
}).done(function(data) {
var arrParent = JSON.parse(data);
var i;
var j;
for(j = 0; j < arrParent.length; j++) {
$.ajax({
url:data.build[j].url,
method: 'GET',
headers: {'authorization': 'Basic ' + btoa('elior:3cbe5b03748e8f3f800e')}
}).done(function(datajob) {
var arr = JSON.parse();
for(i = 0; i < arr.length; i++) {
out += "<tr><td>" +
arr[i].number +
"</td><td>" +
arr[i].version +
"</td><td>" +
arr[i].timestamp +
"</td></tr>";
}
});
}
document.getElementById("id01").innerHTML = out;
})
});
</script>
这是第一个json URL的例子:
{
"builds" : [
{
"actions" : [
{
},
{
},
{
},
{
},
{
},
{
}
],
"artifacts" : [
],
"building" : false,
"description" : null,
"duration" : 32640,
"estimatedDuration" : 33113,
"executor" : null,
"fullDisplayName" : "ios_sdk #282",
"id" : "2016-06-20_09-32-23",
"keepLog" : false,
"number" : 282,
"result" : "SUCCESS",
"timestamp" : 1466415143000,
"url" : "http://build-20003.eu1.kolko.com:8080/job/ios_sdk/282/",
"builtOn" : "macmini12",
"changeSet" : {
},
"culprits" : [
这是第二个json URL的例子(来自上面):
{
"actions" : [
{
"parameters" : [
{
"name" : "Version",
"value" : "5.0.1"
},
{
"name" : "IOS",
"value" : true
},
{
"name" : "CocoaPods",
"value" : false
},
{
"name" : "Unity",
"value" : false
},
{
"name" : "Publish",
"value" : false
}
]
},
{
"causes" : [
{
"shortDescription" : "Started by user elior",
"userId" : "elior",
"userName" : "elior"
}
]
},
{
},
{
"buildsByBranchName" : {
"refs/remotes/origin/master" : {
"buildNumber" : 282,
"buildResult" : null,
"marked" : {
"SHA1" : "4e3b7d0199aaa9b8d6cebcf8ccd6b2a5",
"branch" : [
{
"SHA1" : "4e3b7d0199aaa9b8d6cebcf8ccd6b2a5",
"name" : "refs/remotes/origin/master"
}
]
},
"revision" : {
"SHA1" : "4e3b7d29ddaaa9b8b0cebcf8ccd6b2a5",
"branch" : [
{
"SHA1" : "4e3b7d019929b0cbd6cebcf8ccd6b2a5",
"name" : "refs/remotes/origin/master"
}
]
}
}
},
"lastBuiltRevision" : {
"SHA1" : "4e3b7d019929ddb8b0cbd6cebcf82a5",
"branch" : [
{
"SHA1" : "4e3b7d019929ddaaa9ebcf8ccd6b2a5",
"name" : "refs/remotes/origin/master"
}
]
},
"remoteUrls" : [
"https://deployment:username@bitbucket.org/kokol/kokol.sdk.ios.git"
],
"scmName" : ""
},
{
},
{
}
],
"artifacts" : [
],
"building" : false,
"description" : null,
"duration" : 32640,
"estimatedDuration" : 33113,
"executor" : null,
"fullDisplayName" : "ios_sdk #282",
"id" : "2016-06-20_09-32-23",
"keepLog" : false,
"number" : 282,
"result" : "SUCCESS",
"timestamp" : 1466415143000,
"url" : "http://build-20003.eu1.kokol.com:8080/job/ios_sdk/282/",
"builtOn" : "macmini12",
"changeSet" : {
"items" : [
1条答案
按热度按时间6yt4nkrj1#
我知道怎么做了!我还发现jenkins API可以根据我的需要创建1个json结构。在我创建了相关的json URL之后,我读了很多关于它的内容,并设法读取json URL并解析它。