Wenn Sie zu GitHub gehen, werden unter Probleme alle offenen Probleme als HTML-Seite angezeigt. Wir möchten ein Dashboard implementieren, das alle Probleme in einem Repository anzeigt, gruppiert nach Bezeichnungen, einschließlich der Probleme, die nicht korrekt gekennzeichnet sind.
Dies ist die entsprechende Liste-Probleme-für-ein-Repository-API .
Während ich ursprünglich jQuery und Javascript verwendet habe, verwende ich jetzt PHP als Proof-of-Concept, da ich mich aufgrund der integrierten Sitzungsbehandlung auf derselben Seite anmelden, GitHub authentifizieren und zurückrufen und fortfahren kann. Aber es ist mir egal, jede Sprache ist in Ordnung.
Ich habe es geschafft, über OAUTH2 auf die GitHub-API zuzugreifen, aber wenn ich die Liste der Repositorys über https://api.github.com/orgs/{org}/repos
sie erhalte, wird sie als leeres Array angezeigt .
Da die /orgs/{org}/repos
API ein leeres Array zurückgibt, gibt die entsprechende /repos/{org}/{repo}/issues
API natürlich einen Fehler zurück.
Bearbeiten : In diesem Follow-up finden Sie eine Lösung! Ich bin froh, dass ich es endlich geschafft habe!
quelle
{ "message": "Not Found", "documentation_url": "https://developer.github.com/v3/issues/#list-issues-for-a-repository" }
, aber ich habe es gelesen und das ist anscheinend die Standardantwort, wenn ich versuche, auf private Repos zuzugreifen, also nach OAuth usw. zu suchen. FWIW, mit JavaScript unter jQuery Framework.Sie können jQuery Ajax verwenden, um auf die Github-API zuzugreifen und einen grundlegenden Authentifizierungsheader zur Authentifizierung hinzuzufügen (siehe hier ). Ein Beispiel wird unten gezeigt. Dadurch werden die Probleme für ein bestimmtes Repo behoben und die ersten 10 in einem Warnfenster angezeigt.
In der Dokumentation zum Abrufen von Problemen finden Sie hier: https://developer.github.com/v3/issues/ , welche Parameter Sie zum Filtern, Sortieren usw. verwenden können.
Zum Beispiel können Sie alle Probleme mit der Bezeichnung "Fehler" erhalten, indem Sie:
Dies kann mehrere Etiketten umfassen, z
Sie können leicht ändern, um in einer Tabelle usw. aufzulisten.
Im Folgenden finden Sie einen Ausschnitt mit Problemen für ein (öffentliches) Repo mit jQuery und der Github-API:
(Beachten Sie, dass wir hier keinen Authentifizierungsheader hinzufügen!)
quelle
https://api.github.com/authorizations
angibt, dass nur mit grundlegender Berechtigung auf sie zugegriffen werden kann :stdClass Object ( [message] => This API can only be accessed with username and password Basic Auth [documentation_url] => https://developer.github.com/v3 )
. Vielleicht funktioniert das also.