要使用 JavaScript 访问 Jenkins API,你可以利用XMLHttpRequest
对象或fetch
API 来发送 HTTP 请求。以下是具体的步骤和示例代码:
http://your-jenkins-server-url:port
。XMLHttpRequest
发送 GET 请求来获取 Jenkins 项目列表的示例:// 创建XMLHttpRequest对象
const xhr = new XMLHttpRequest();
// 配置请求
xhr.open('GET', 'http://your-jenkins-server-url:port/api/json', true);
xhr.setRequestHeader('Authorization', 'Basic ' + btoa('your-username:your-api-token'));
// 发送请求
xhr.send();
// 处理响应
xhr.onload = function() {
if (xhr.status === 200) {
const responseData = JSON.parse(xhr.responseText);
console.log(responseData);
} else {
console.error('请求失败:', xhr.status);
}
};
xhr.onerror = function() {
console.error('请求出错');
};
const xhr = new XMLHttpRequest();
const newJobData = {
name: 'new-job-name',
// 其他任务配置参数
};
xhr.open('POST', 'http://your-jenkins-server-url:port/createItem', true);
xhr.setRequestHeader('Authorization', 'Basic ' + btoa('your-username:your-api-token'));
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify(newJobData));
xhr.onload = function() {
if (xhr.status === 201) {
console.log('任务创建成功');
} else {
console.error('任务创建失败:', xhr.status);
}
};
xhr.onerror = function() {
console.error('请求出错');
};
fetch
发送 GET 请求获取 Jenkins 项目列表:fetch('http://your-jenkins-server-url:port/api/json', {
method: 'GET',
headers: {
'Authorization': 'Basic ' + btoa('your-username:your-api-token')
}
})
.then(response => {
if (!response.ok) {
throw new Error('请求失败:' + response.status);
}
return response.json();
})
.then(data => {
console.log(data);
})
.catch(error => {
console.error('请求出错:', error);
});
fetch
发送 POST 请求创建新任务:const newJobData = {
name: 'new-job-name',
// 其他任务配置参数
};
fetch('http://your-jenkins-server-url:port/createItem', {
method: 'POST',
headers: {
'Authorization': 'Basic ' + btoa('your-username:your-api-token'),
'Content-Type': 'application/json'
},
body: JSON.stringify(newJobData)
})
.then(response => {
if (response.status === 201) {
console.log('任务创建成功');
} else {
throw new Error('任务创建失败:' + response.status);
}
})
.catch(error => {
console.error('请求出错:', error);
});
在实际应用中,你需要将http://your-jenkins-server-url:port
替换为真实的 Jenkins 服务器地址和端口,your-username
和your-api-token
替换为你的用户名和 API Token。同时,根据你的具体需求,可以调整请求的 URL、方法和参数,以实现对 Jenkins API 的各种操作,如获取任务信息、触发构建、获取构建结果等。
领取专属 10元无门槛券
手把手带您无忧上云