Триггер Jenkins для C # - проблема с аутентификацией - PullRequest
0 голосов
/ 06 февраля 2019

Я пытаюсь запустить сценарий селена Jenkins из приложения на C #, и у меня возникают проблемы с аутентификацией.Я получаю ЗАПРЕЩЕННЫЙ ответ:

No valid crumb was included in the request

Я использую плагин RestSharp, например:

var client = new RestClient(url);
var restRq = new RestRequest(Method.POST);
var response = client.Execute(restRq);

URL-адрес:

http://myjenkinsserver:8080/view/CJX/job/BUILDTORUN/buildWithParameters?token=THISISTHETOKEN&ENVIRONMENT=QA

Я не являюсьуверен, если мне нужно включить заголовки аутентификации?Я также установил корневой плагин Token Authorization Token и плагин Build Token (читайте о них где-то еще).

ОБНОВЛЕНИЕ

Я читал в другом месте, как получитькрошка от Дженкинса, поэтому я добавил GET, чтобы получить этот код, теперь он выглядит так:

var crumbClient = new RestClient("http://MYJENKINSSERVER:8080/crumbIssuer/api/json");
crumbClient.Authenticator = new HttpBasicAuthenticator("USERNAME", "PASSWORD");
var crumbRequest = new RestRequest(Method.GET);
var crumbResponse = crumbClient.Execute(crumbRequest);
var jenkinsCrumb = JsonConvert.DeserializeObject<JenkinsCrumbResponse>(crumbResponse.Content);                    

 var client = new RestClient(url);
 var restRq = new RestRequest(Method.POST);
 restRq.AddHeader("Jenkins-Crumb", jenkinsCrumb.crumb);    
 var response = client.Execute(restRq);

В ответе по-прежнему возвращается «В запросе не было допустимой крошки».Так, может быть, я неправильно устанавливаю крошку в запросе?

ОБНОВЛЕНИЕ Я также пытаюсь запустить это в Почтальоне, просто чтобы посмотреть, не работает ли мой код.Я получаю:

<code><h2>HTTP ERROR 403</h2>
    <p>Problem accessing /job/__SlackTestRun/buildWithParameters. Reason:

        <pre>    No valid crumb was included in the request

В почтальоне я отправляю запрос на тот же URL, упомянутый выше, и устанавливаю заголовки с параметром "Jenkins-Crumb" и типом содержимогозаявки / xml.

Не повезло!

Postman screenshot

...