示例#1
0
 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);
     }
 }
示例#2
0
        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);
            }
        }