2015-11-15 5 views
5

Angenommen, ich muss die Anzahl der Follower jedes Benutzers angeben, die zu einem Repository beitragen (mit JavaScript).GitHub: Wie kann das Suchlimit überschritten werden, wenn nach Benutzerdetails gesucht wird, die zu einem Repository beitragen?

Erstens, ich benutze diese:

$.ajax({ 
     headers: { Authorization: "Basic " + auth }, 
     type: 'GET', 
     url: 'https://api.github.com/repos/[reponame]/angular/contributors', 
     dataType: 'json', 
     success: function (data) { 
      repositories = data; 
      outputPageContent(); 
     } 
    }); 

ich die JSON Liste der Benutzer zu bekommen, aber es gibt keine Informationen über eine Menge von Anhängern eines jeden von ihnen. Ich dachte, ich separat danach fragen würde (in einer Schleife), „url“ wie mit:

https://api.github.com/users/repositories[i].login

Aber auf diese Weise bin ich mehr als die Suche Grenze einmal auf (bis zu 30 pro Minute für Registrierte Benutzer).

Haben Sie eine Idee, wie Sie dieses Problem lösen können? Vielleicht eine verschachtelte Anfrage?

Ich habe auch einige zusätzliche Fragen:

  1. Zuerst dachte ich, es wäre ein guter Schritt zu bedienen „OR“ logischen Operator und fordern so etwas wie „Gib mir alle Benutzer, die = anmelden Logina OR login login = loginB ODER login = loginC "usw. Aber ich habe nicht gefunden, wie man" oder "logischer operator in github api verwendet.

  2. Wie ist es möglich, können Sie:

„Für Anfragen unter Verwendung der Standardauthentifizierung oder OAuth, können Sie bis zu 5.000 Anfragen pro Stunde machen.“

Sie können aber nur 30 Antrag stellen pro Minute? Wäre es nicht 30 * 60 = 1800 Anfragen pro Stunde?

Antwort

1

Eine Abfrage wie diese ist mit Github v4 API möglich. Versuchen Sie dies in der API Explorer

query { 
    repository (name: "angular", owner: "angular") { 
    assignableUsers (first: 100) { 
     edges { 
     node { 
      id 
      login 
      followers { 
      totalCount 
      } 
     } 
     } 
    } 
    } 
} 
+0

Schließlich xd. Vielen Dank. – user3581955

Verwandte Themen