使用用户名/API令牌javascript的Jenkins POST请求



我使用chrome扩展来显示和可视化来自jenkins服务器的数据。我试图使用jQuery函数$.ajax()在该服务器上启动某个构建,但由于服务器是安全的,我需要传递用户名和密码。

在谷歌上搜索了一段时间后,我发现很多人建议使用这种格式:

http://username:APIToken@jenkinsurl

我试过这两种方法,以及用户名和实际密码的组合,但似乎都不起作用。

我必须注意,我正在使用詹金斯试驾,并且http://localhost:8080/出于我的目的,因为我实际上并不拥有詹金斯服务器。也许这与上述不起作用有关。

事实证明,jenkins需要抢先身份验证,这意味着我最终所做的只是在ajax调用中添加"beforeSend"选项。

$.ajax({
        type: "POST",
        beforeSend: function (xhr){
            xhr.setRequestHeader('Authorization', "Basic " + btoa("USERNAME" + ":" + "APITOKEN"));
        },
        url: "Jenkins-Job-Url/build?token=TOKEN"
    });

最新更新