Извлеките все неподтвержденные репо из организации с помощью Github API

Используя API Github, я пытаюсь получить список всех исходных репозиториев из организации с сотнями репозиториев: Github API

Нумерация страниц не является проблемой. Используя запрос как:

curl https://api.github.com/orgs/:org/repos?page=X

Где X - номер страницы, он работает нормально, но мне нужно получить только не разветвленные (или исходные) репозитории, поэтому для этого я пытаюсь выполнить этот запрос:

curl https://api.github.com/orgs/:org/repos?type=source?page=X

Используя это, он извлекает исходные репозитории с первой страницы, но он вообще не получает X-параметр (так как он всегда возвращает одни и те же репозитории с разными номерами).

Я предполагаю, что этот запрос принимает только один параметр, но есть ли способ сделать это без использования Octokit?

1 ответ

Решение

Функция разбивки на страницы прекрасно работает в Github API, но главная проблема с вашим URL-адресом HTTP, которая делает запрос не разбитым на страницы, заключается в том, что type Параметр запроса не учитывается при обработке вашего запроса, и это просто потому, что вы решили пропустить его с помощью ? персонаж.

Ваш URL имеет неправильный формат, а более конкретно, вы разработали две строки запроса, потому что вы использовали ? персонаж дважды:

  • ? тип
  • страница

Вы должны взглянуть на ссылку выше, указывающую на формат строки запроса в Unified Resource Locator, и просто сказали, что вам нужно следовать двум правилам:

  • Когда вы вводите символ допроса ? это означает, что вы собираетесь предоставить набор параметров запроса.
  • Параметры запроса разделяются символом амперсанда &

Приведя вышеупомянутые лайнеры в действие, вы должны запросить URL:

curl https://api.github.com/orgs/:org/repos?type=sources&page=X
Другие вопросы по тегам