簡體   English   中英

REST API身份驗證失敗-Jenkins

[英]Rest API authentication failure - Jenkins

我已經在端口8081上安裝了Jeninkins,並以用戶名和密碼將管理員用戶設置為'admin'

嘗試調用rest API以獲得使用Java客戶端手動創建的作業列表時,出現以下錯誤

錯誤:“ GET http:// localhost:8081 / api / xml返回了401未經授權的響應狀態”

您可以通過驗證用戶身份來解決該問題嗎?

我的Java客戶端:

        String url = "http://localhost:8081/api/xml";
        String name = "admin";
        String password = "admin";
        String authString = name + ":" + password;
        String authStringEnc = new BASE64Encoder().encode(authString.getBytes());
        System.out.println("Base64 encoded auth string: " + authStringEnc);
        Client restClient = Client.create();
        WebResource webResource = restClient.resource(url);
        ClientResponse resp = webResource.accept("application/xml")
                                         .header("Authorization", "Basic " + authStringEnc)
                                         .get(ClientResponse.class);
        if(resp.getStatus() != 200){
            System.err.println("Unable to connect to the server");
        }
        String output = resp.getEntity(String.class);
        System.out.println("response: "+output);

我已經通過在Jenkins url.PBF中添加API令牌解決了此問題,工作代碼段

    String url ="http://<user name>:<apitoken for user>@localhost:8081/api/xml";
    String name = "admin";
    String password = "admin";
    String authString = name + ":" + password;
    String authStringEnc = new BASE64Encoder().encode(authString.getBytes());
    System.out.println("Base64 encoded auth string: " + authStringEnc);
    Client restClient = Client.create();
    WebResource webResource = restClient.resource(url);
    ClientResponse resp = webResource.accept("application/xml")
                                     .header("Authorization", "Basic " + authStringEnc)
                                     .get(ClientResponse.class);
    if(resp.getStatus() != 200){
        System.err.println("Unable to connect to the server");
    }
    String output = resp.getEntity(String.class);
    System.out.println("response: "+output);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM