我正在尝试检索属于JIRA实例的所有项目的所有问题。
在JIRA 6.3 REST API documentation我找到了这个命令:/rest/api/2/search
。作为描述,它只是说“使用JQL搜索问题”,仅此而已。
当我用Jira's Demo测试时,我得到了最新的50个问题。但这些问题来自何处(或来自哪些项目)?这些问题是否来自Jira的所有项目,可以在这里找到https://jira.atlassian.com/secure/BrowseProjects.jspa#all?
所以,你似乎不理解你在问题上提供的API或者没有足够重视它。
如果你在request query parameters
部分看到,将有maxResults
参数,其中指出:
要返回的最大问题数(默认为50)。最大允许值由JIRA属性'jira.search.views.default.max'决定。如果指定的值高于此数字,搜索结果将被截断。
这篇文章的大胆部分是你没有注意或看到的。
因此,您依赖于Jira实例上配置的值。看那里并使用链接:
https://jira.atlassian.com/rest/api/2/search?jql&maxResults=[QUANTITY]
我认为没有休息功能可以从所有项目中检索所有问题,因为它可能会生成大响应,因此您必须使用以下命令对请求进行分页:
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