gpt4 book ai didi

python - 如何使用 REST API 从 Python 脚本更新 Jira v5.1 中的问题

转载 作者:太空宇宙 更新时间:2023-11-03 15:21:49 24 4
gpt4 key购买 nike

我希望能够使用 REST API 从 Python 脚本更新 Jira v5.1 中的问题。我有以下代码来提取现有问题的信息,效果很好:

import urllib2
import urllib
import cookielib
import json

serverURL = 'http://jiraserver.com'

# Get the authentication cookie using the REST API
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
authURL = serverURL + '/rest/auth/latest/session'
creds = {'username' : jirauser, 'password' : passwd}
req = urllib2.Request(authURL)
req.add_data(json.dumps(creds))
req.add_header("Content-type", "application/json")
req.add_header("Accept", "application/json")
fp = opener.open(req)
fp.close()

queryURL = serverURL + '/rest/api/latest/issue/SANDBOX-150'
req = urllib2.Request(queryURL)
req.add_header("Content-type", "application/json")
req.add_header("Accept", "application/json")
fp = opener.open(req)
data = json.load(fp)
fp.close()

我想扩展它以便能够更新相同的问题,并且我有以下代码:

queryURL = serverURL + '/rest/api/latest/issue/SANDBOX-150'

issueUpdate = {
'update': {
'comment': [
{
'add': {
'body': 'this is a comment'
}
}
]
}
}
req = urllib2.Request(queryURL)
req.add_data(json.dumps(issueUpdate))
req.add_header("Content-type", "application/json")
req.add_header("Accept", "application/json")
fp = opener.open(req)
fp.close()

当我尝试执行代码时,收到以下错误消息:

File "/usr/lib64/python2.6/urllib2.py", line 397, in open
response = meth(req, response)
File "/usr/lib64/python2.6/urllib2.py", line 510, in http_response
'http', request, response, code, msg, hdrs)

File "/usr/lib64/python2.6/urllib2.py", line 435, in error
return self._call_chain(*args)

File "/usr/lib64/python2.6/urllib2.py", line 369, in _call_chain
result = func(*args)
File "/usr/lib64/python2.6/urllib2.py", line 518, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 405: Method Not Allowed

错误指向我代码中的“fp = opener.open(req)”。

我尝试在网上搜索以查看是否可以找到解决方案,但没有成功。有谁知道我做错了什么?

感谢和问候

最佳答案

如果您使用的是 Python 2.7.x,我推荐 jira-python。它是一个 Python 包,可处理与 Jira 的整个 REST 通信:

http://jira-python.readthedocs.org/en/latest/

关于python - 如何使用 REST API 从 Python 脚本更新 Jira v5.1 中的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13762667/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com