我试图从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=='}