2014-12-06 23 views
10

göstermiyor:Github API v3 tüm kullanıcı depoları

$ curl https://api.github.com/users/KiCad/repos | grep full_name 

Ben tüm KiCad depoları dönecektir bekliyoruz, ancak döndürür:

"full_name": "KiCad/Air_Coils_SML_NEOSID.pretty", 
"full_name": "KiCad/Buzzers_Beepers.pretty", 
"full_name": "KiCad/Capacitors_Elko_ThroughHole.pretty", 
"full_name": "KiCad/Capacitors_SMD.pretty", 
"full_name": "KiCad/Capacitors_Tantalum_SMD.pretty", 
"full_name": "KiCad/Capacitors_ThroughHole.pretty", 
"full_name": "KiCad/Choke_Axial_ThroughHole.pretty", 
"full_name": "KiCad/Choke_Common-Mode_Wurth.pretty", 
"full_name": "KiCad/Choke_Radial_ThroughHole.pretty", 
"full_name": "KiCad/Choke_SMD.pretty", 
"full_name": "KiCad/Choke_Toroid_ThroughHole.pretty", 
"full_name": "KiCad/Connect.pretty", 
"full_name": "KiCad/Connectors_Molex.pretty", 
"full_name": "KiCad/Converters_DCDC_ACDC.pretty", 
"full_name": "KiCad/Crystals.pretty", 
"full_name": "KiCad/Crystals_Oscillators_SMD.pretty", 
"full_name": "KiCad/Diodes_SMD.pretty", 
"full_name": "KiCad/Diodes_ThroughHole.pretty", 
"full_name": "KiCad/Discret.pretty", 
"full_name": "KiCad/Display.pretty", 
"full_name": "KiCad/Displays_7-Segment.pretty", 
"full_name": "KiCad/Divers.pretty", 
"full_name": "KiCad/EuroBoard_Outline.pretty", 
"full_name": "KiCad/Fiducials.pretty", 
"full_name": "KiCad/Filters_HF_Coils_NEOSID.pretty", 
"full_name": "KiCad/Fuse_Holders_and_Fuses.pretty", 
"full_name": "KiCad/Hall-Effect_Transducers_LEM.pretty", 
"full_name": "KiCad/Heatsinks.pretty", 
"full_name": "KiCad/Housings_DFN_QFN.pretty", 
"full_name": "KiCad/Housings_QFP.pretty", 

Bakarsanız https://github.com/KiCad adresinde, daha fazla depo olduğunu göreceksiniz.

Bu sorunla karşılaştı mı? Bunu nasıl çözersin?

cevap

14

GitHub API'sı sayfa başına sayfa başına 30 maddelik sayfalandırma ve varsayılan değerleri kullanır.

100, tek bir sayfada alabileceğiniz en fazla öğedir. -i ile belirtilen başlıkların yazdırıldığını göreceksiniz ve aradığınız başlık Links başlığıdır. Bu, sayfalarda gezinmenize yardımcı olacak bağlantılara sahip olacak. Eğer sen repo 101-200 alırsınız

curl -i https://api.github.com/users/KiCad/repos?per_page=100&page=2 

yaparsanız bu bağlantılardan biri Yani

https://api.github.com/users/KiCad/repos?per_page=100&page=2 

gibi görünmelidir. Links başlığında next bağlantı bulunana kadar veya 100'den az sonuç aldığınızı fark edinceye kadar devam edebilirsiniz.

+3

Bu yanıt harikadır ve daha fazla ayrıntı için sayfalandırma ile ilgili dökümantasyonun bağlantısı https://developer.github.com/v3/#pagination –

+0

Bu @jasonrudolph'u düzeltdiğiniz için teşekkür ederiz –