我想知道如何根据给定项目的规则通过 REST API 获取声纳中的问题计数。
谢谢,阿拉文德
在 SonarQube UI 的每个页面的页脚中,您都会找到指向您的版本的 API 文档的链接。查看issues/search,您可以通过componentKeys
(项目 ID)对其进行限定。在响应 JSON(您可以在板载文档中查看示例)中查看paging.total
可以回答此类查询的 REST API 端点是api/issues/search。
例如,给定$KEY
一个项目,您可以找到使用的问题数量curl
和jq
工具,如下所示:
curl "yourserver/api/issues/search?componentKeys=$KEY&ps=1" | jq .total
那是:
componentKeys
参数中设置项目密钥ps=1
来最小化输出由于 ,这将返回一个问题,ps=1
但在 JSON 响应中,您应该会看到total
包含问题总数的字段。
该jq
工具将为您提供单个数字的干净输出,如果您没有它,您可以简单地获取head
响应,该值应该在顶部附近很容易看到,例如:
$ curl "yourserver/api/issues/search?componentKeys=$KEY&ps=1" | jq .total
{
"total": 12,
"p": 1,
"ps": 1,
"paging": {
"pageIndex": 1,
"pageSize": 1,
"total": 12
},
"issues": [
(在这个例子中,项目中有 12 个问题。)