You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Javascript在GitLab Pages上获取GitLab任务状态?

解决GitLab API获取任务状态404的问题

你的代码存在几个关键问题,直接导致了404错误:

  • 请求方法错误:获取单个任务状态需要用GET请求,而非POST。POST方法在这个API路径下是用于创建任务的,并非查询操作。
  • API路径错误:查询单个任务状态的正确路径是/projects/{项目ID}/jobs/{任务ID},你当前使用的/projects/{项目ID}/jobs是获取项目下所有任务列表的接口,无法定位到单个任务。
  • 参数传递错误:任务ID不需要放在请求体中,而是要直接拼接在URL路径里。

修正后的代码如下:

fetch('https://gitlab.devops.telekom.de/api/v4/projects/165107/jobs/78912', {
    method: 'GET',
    headers: {
        'Accept': 'application/json',
        'PRIVATE-TOKEN': 'TOKEN'
    }
}).then(response => {
    if (!response.ok) {
        throw new Error(`HTTP错误!状态码: ${response.status}`);
    }
    return response.json();
}).then(response => console.log(JSON.stringify(response)))
.catch(error => console.error('请求出错:', error));

额外注意:

  • 确保你的PRIVATE-TOKEN拥有该项目的读取权限,权限不足也可能引发404或403错误。
  • 如果GitLab Pages是公开可访问的页面,绝对不要把私有Token直接写在前端代码中,会导致Token泄露,建议通过后端代理转发API请求。

内容的提问来源于stack exchange,提问作者Marten

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 21:30:50