1

我想知道如何根据给定项目的规则通过 REST API 获取声纳中的问题计数。

谢谢,阿拉文德

4

2 回答 2

1

在 SonarQube UI 的每个页面的页脚中,您都会找到指向您的版本的 API 文档的链接。查看issues/search,您可以通过componentKeys(项目 ID)对其进行限定。在响应 JSON(您可以在板载文档中查看示例)中查看paging.total

于 2017-11-02T13:18:40.160 回答
0

可以回答此类查询的 REST API 端点是api/issues/search

例如,给定$KEY一个项目,您可以找到使用的问题数量curljq工具,如下所示:

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 个问题。)

于 2017-11-02T13:25:15.307 回答