Сколько поисковых запросов с ограничением пользователей будет иметь github?

#github #github-api

#github #github-api

Вопрос:

Я пытаюсь выполнить поиск в репозитории с помощью github api, и мне интересно, сколько людей ограничивает количество людей, которых я могу искать.

Например, я пытаюсь написать api, как показано ниже, и мне интересно, сколько людей «user: XXX» здесь.

 https://api.github.com/search/repositories?q=user:taetaetae user:black9p user:asuraiv
  

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

Спасибо.

Ответ №1:

Для API поиска вы ограничены максимальным размером поискового запроса, который составляет 256 символов :

API поиска не поддерживает запросы, которые:

  • длиннее 256 символов (не включая операторы или квалификаторы).
  • иметь более пяти операторов AND , OR, or NOT. Эти поисковые запросы вернут сообщение об ошибке «Ошибка проверки».

Но если вы хотите уменьшить количество запросов, вы можете использовать GraphQL api и следующий запрос с использованием псевдонимов:

 query { 
  user0: user(login: "taetaetae") {
    name
    login
    createdAt
  }
  user1: user(login:"black9p"){
    name
    login
    createdAt
  }
  user2: user(login:"asuraiv"){
    name
    login
    createdAt
  }
}
  

Вы также можете использовать фрагменты :

 query { 
  user0: user(login: "taetaetae") {
    ...UserFragment
  }
  user1: user(login:"black9p"){
    ...UserFragment
  }
  user2: user(login:"asuraiv"){
    ...UserFragment
  }
}
fragment UserFragment on User {
  name
  login
  createdAt
}
  

Вывод :

 {
  "data": {
    "user0": {
      "name": "taetaetae",
      "login": "taetaetae",
      "createdAt": "2015-02-12T02:27:40Z"
    },
    "user1": {
      "name": "Seongduck Paek",
      "login": "black9p",
      "createdAt": "2018-01-07T11:53:13Z"
    },
    "user2": {
      "name": "Ju Pyo Hong",
      "login": "asuraiv",
      "createdAt": "2017-08-04T16:23:09Z"
    }
  }
}
  

Попробуйте это в проводнике