即使提供crum,请求中也不包含有效的碎屑

时间:2018-02-21 21:14:31

标签: python-3.x python-2.7 jenkins-pipeline

我试图从python脚本调用jenkins作业。我可以在邮递员那里得到请求。但是从脚本中它给出了我的错误403.下面是我尝试过的代码片段。如果我错过了什么,请告诉我。

我看到碎屑上的帖子无法正常工作。在我的请求中,我得到了面包屑并传递了后api电话。但它似乎仍无效。

jenkinsUrl = "url/buildWithParameters?token=1122"
getcrumb=requests.get('https://jenkins.com/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)')
crumb = json.dumps(getcrumb.content)
headers_data = {'Jenkins-Crumb':crumb, 'Content-
Type':'application/x-www-form-urlencoded'}

response = requests.post(jenkinsUrl,auth=('xxxx','xxxx'),
headers=headers_data, data=job_payload)
print("response", response.text)

我从crumb的get调用中得到的数据是这样的。     '詹金斯 - 克拉姆':' c5cc280ddab3fb07d7bf5ae1f254f44e' 我正在从中删除crumb值并将其传递给标题。

这是我在拨打电话时看到的标题。

 {'Content-Length': '130', 'Accept-Encoding': 'gzip, deflate', 
 'Accept': '*/*', 'User-Agent': 'python-requests/2.18.4', 'Connection': 
 'keep-alive', 'Jenkins-Crumb': 'b9fdfc403f9bc2eccc1f0410b0e55ca2', 
 'Content-Type': 'application/x-www-form-urlencoded', 'Authorization': 
 'Basic ZnNqZW5raW5zdXNlcjpDYXBpdGFsMg=='}

0 个答案:

没有答案