0

我正在尝试检索属于 JIRA 实例的所有项目的所有问题。
JIRA 6.3 REST API 文档中,我发现了这个命令:/rest/api/2/search. 作为描述,它只说“使用 JQL 搜索问题”,仅此而已。

当我用Jira 的 Demo测试它时,我得到了最新的 50 个问题。但是这些问题来自哪里(或来自哪些项目)?这些问题是否来自 Jira 的所有项目,可以在这里找到https://jira.atlassian.com/secure/BrowseProjects.jspa#all

4

1 回答 1

2

因此,您似乎没有理解您在问题上提供的API,或者没有给予足够的重视。

如果您在该request query parameters部分看到,将有maxResults参数说明:

返回的最大问题数(默认为 50)。最大允许值由 JIRA 属性'jira.search.views.default.max'规定。如果您指定的值高于此数字,您的搜索结果将被截断。

这篇文章的粗体部分是你根本没有注意或看到的。

因此,您取决于在 Jira 实例上配置的值。查看那里并将链接用作:

https://jira.atlassian.com/rest/api/2/search?jql&maxResults=[数量]

我认为没有休息功能可以从所有项目中检索所有问题,因为它可能会产生很大的响应,因此您必须使用以下方法对请求进行分页:

https://jira.atlassian.com/rest/api/2/search?jql&startAt=0&maxResults=1000

然后又

https://jira.atlassian.com/rest/api/2/search?jql&startAt=1001&maxResults=1000

等等...

希望能帮助你理解。

编辑

结果来自所有项目。如果要添加特定项目,则必须更改jql参数。一个例子是:jql=project="test"当然,双引号和等号必须编码为 get 参数。

同样,您没有看到规范有一个指向 JQL 规范的链接:JQL

于 2014-07-09T19:52:25.697 回答