private void Crumb() { // only on newer Jenkins versions // handle CSRF Protection try { JenkinsSecurityCsrfDefaultCrumbIssuer crumb = GetAsync <JenkinsSecurityCsrfDefaultCrumbIssuer>("crumbIssuer/api/xml", CancellationToken.None).Result; this.client.DefaultRequestHeaders.Add(crumb.CrumbRequestField, crumb.Crumb); } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private void Crumb(bool ignoreForbidden = false) { var ignoreList = new List <HttpStatusCode>(); ignoreList.Add(HttpStatusCode.NotFound); // 404 not found : for old Jenkins versionen without crumb if (ignoreForbidden) { ignoreList.Add(HttpStatusCode.Forbidden); } JenkinsSecurityCsrfDefaultCrumbIssuer crumb = GetApiAsync <JenkinsSecurityCsrfDefaultCrumbIssuer>("crumbIssuer", ignoreList, CancellationToken.None).Result; if (crumb != null) { this.client.DefaultRequestHeaders.Add(crumb.CrumbRequestField, crumb.Crumb); } }