如何通过Jira REST API批量查询多个指定issue对应的数据?
可以通过Jira官方提供的搜索接口实现批量查询,性能远高于循环调用单issue查询接口,具体实现方式如下:
方法1:GET请求(适用于issue数量较少的场景)
使用/rest/api/2/search接口,通过JQL语句指定要查询的issue列表,同时指定仅返回summary字段减少数据传输开销,示例curl请求如下:
curl -s -X GET -u super_user:super_password "https://jira.server.com/rest/api/2/search?jql=issueKey%20IN%20(TEST-12,TEST-13,TEST-14)&fields=summary&maxResults=1000"
参数说明:
jql:查询条件,issueKey IN (xxx)表示只返回指定key的issue,注意URL中空格需要编码为%20fields:指定返回的字段,只填summary即可满足需求,省略不需要的字段可以大幅提升接口响应速度maxResults:单页返回的最大结果数,默认值为50,若查询的issue数量超过50需要调大该参数,或结合startAt参数处理分页
方法2:POST请求(适用于issue数量较多的场景)
如果需要查询的issue数量过多,GET请求会存在URL长度超限的问题,可以使用同一路径的POST接口传递查询参数,示例curl请求如下:
curl -s -X POST -u super_user:super_password \ -H "Content-Type: application/json" \ https://jira.server.com/rest/api/2/search \ -d '{ "jql": "issueKey IN (TEST-12,TEST-13,TEST-14)", "fields": ["summary"], "maxResults": 1000 }'
结果处理
接口返回的JSON数据中,issues数组的每个元素包含:
key字段:对应issue的idfields.summary字段:对应issue的摘要
遍历该数组即可直接生成你需要的{issue-id: summary}映射关系。
内容的提问来源于stack exchange,提问作者StoneThrow
相关产品推荐
相关产品推荐

