Как запросить все языки из GitHubs graphql - PullRequest
1 голос
/ 30 марта 2020

Я пытаюсь запросить GitHub информацию о репозиториях, используя их v4 graphql. Одна из вещей, которую я хочу запросить, - это разбивка всех языков, используемых в репо. Или, если возможно, разбивка языков по всем репозиториям пользователя. Я попробовал следующий фрагмент, но он возвращает ноль, где основной язык возвращает основной язык

languages: {
  edges: {
    node: {
      name
    }
  }
}

Единственное, что я могу найти относительно языков, это основной язык. Но я хотел бы показать статистику для пользователя и всех языков, которые он использует, либо в одном репо, либо во всех репо.

1 Ответ

2 голосов
/ 30 марта 2020

Вам не хватает поля среза, здесь вы можете поставить first: 100, чтобы получить первые 100 языков для хранилища:

{
  user(login: "torvalds") {
    repositories(first: 100) {
      nodes {
        primaryLanguage {
          name
        }
        languages(first: 100) {
          nodes {
            name
          }
        }
      }
    }
  }
}

Если вы хотите иметь статистику по языку (например, если вы хотите знаю, что является вторым, третьим языком и т. д. c ...) Я боюсь, что в настоящее время это невозможно с API-интерфейсом graphql, но с использованием API List Languages ​​Rest , например https://api.github.com/repos/torvalds/linux/languages

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...