GitLab GraphQL API: чтение необработанных данных - PullRequest
0 голосов
/ 19 марта 2020

Я пытаюсь прочитать необработанное содержимое указанного c файла в моем репозитории GitLab с помощью GraphQL API. Выполнение этого с помощью REST Api подробно описано здесь: https://docs.gitlab.com/ee/api/repository_files.html#get -raw-file-from-repository

Пока я не могу понять, как это сделать с помощью GraphQL. Это насколько я получил.

{
  project(fullPath: "BenSa/first-project") {
    repository {
      tree(ref: "master", recursive: true){
        blobs{
          nodes {
            name
            type
            flatPath
            sha
          }
        }
      }
    }
  }
}

Результат этого запроса:

{
"data": {
    "project": {
      "repository": {
        "tree": {
          "blobs": {
            "nodes": [
              {
                "name": "data.json",
                "type": "blob",
                "flatPath": "",
                "sha": "aa6f396f7a0e2c3163bc05c857539db89ade1a37"
              },
              {
                "name": "index.html",
                "type": "blob",
                "flatPath": "",
                "sha": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391"
              }
            ]
          }
        }
      }
    }
  }
}

И все же я хочу получить доступ к необработанному содержимому «data.json». Я искал в схеме GraphQL слово «raw» и нашел только ссылки на фрагменты. Тип Blob имеет webUrl, но не rawUrl, и, кроме того, мне нужны данные, поступающие из ответа GraphQL, если это возможно, а не отдельный запрос на выборку. Есть идеи?

Вот ссылка на GitLab GraphiQL: https://gitlab.com/-/graphql-explorer

И ссылка на GraphQL: https://docs.gitlab.com/ee/api/graphql/reference/

Спасибо

...