1

我正在尝试获取与给定板关联的 sprint 列表(如JIRA Python 模块文档示例中所述):

sprints = gh.sprints(board_id)

whereboard_id是要检索的板的 ID(1175 供参考),之前检索与jira.boards().

我收到以下错误:

  File "C:\Python27\lib\site-packages\jira\exceptions.py", line 49, in raise_on_error
    raise JIRAError(r.status_code, error, r.url)
jira.exceptions.JIRAError: HTTP 404: "<?xml version="1.0" encoding="UTF-8" standalone="yes"?><status><status-code>404</status-code><message>null for uri: https://jirafoo.bar.com/rest/greenhopper/1.0/sprintquery/1175?includeHistoricSprints=true&amp;includeFutureSprints=true</message></status>"
https://jirafoo.bar.com/rest/greenhopper/1.0/sprintquery/1175?includeHistoricSprints=true&includeFutureSprints=true

(我正在使用 jirafoo.bar.com 来混淆 JIRA 服务器的实际主机名)

请提供有关可能是什么原因的任何线索?谢谢!

编辑:有关 JIRA 服务器版本的参考信息,以防万一:

由 Atlassian GreenHopper (v6.1.6) 提供支持的看板和 Scrum 软件开发的敏捷项目管理。由 Atlassian JIRA (v5.1.1#772-sha1:c73db67) 提供支持的软件开发的错误跟踪和项目跟踪

编辑:我发现直接使用这个 URL(例如在我的浏览器中)我得到一个带有 sprint 列表的 JSON:

https://jirafoo.bar.com/rest/greenhopper/1.0/sprints/1175

也许 JIRA 模块没有为该sprints()方法使用正确的 URL(我知道这将是 JIRA python 库中的一个错误)?或者我在gh对象上使用了错误的方法?我的 Python JIRA 模块版本是 0.32(我认为是撰写本文时的最新版本)。

4

1 回答 1

3

我有同样的问题,无法在任何地方找到答案。

您的问题让我意识到 URL 是问题所在。它称为“/sprintquery/”,而您发布的 URL 是“/sprints/”

我终于在我的电脑上自己实现了修复。我已经备份了文件:

/Library/Python/2.7/site-packages/jira/client.py

并修改了以下行:

r_json = self._get_json('sprintquery/%s?includeHistoricSprints=true&includeFutureSprints=true' % id,
                                base=self.AGILE_BASE_URL)

对于这个:

r_json = self._get_json('sprints/%s?includeHistoricSprints=true&includeFutureSprints=true' % id,
                                base=self.AGILE_BASE_URL)
于 2015-03-03T21:37:11.753 回答