Bei Verwendung von GitLab fehlen Projekte in der API-Liste

18

Ich benutze die GitLab-API, um eine Liste der Projekte abzurufen, auf die ich Zugriff habe (URL /api/v3/projects/all?private_token=xxx), aber es gibt 6-7 Projekte, die aus irgendeinem Grund nicht in der Liste enthalten sind.

BEARBEITEN: Mein Benutzer ist ein Administrator und ich möchte alle Projekte /projects/allauflisten, wie die URL angibt.

Ich habe mit git selbst und dem GitLab-Webinterface Zugriff auf die Projekte. Irgendwelche Vorschläge, warum die Projekte nicht in der Liste der API angezeigt werden?

Alle fehlenden Projekte sind neuer als die anderen. Ich habe versucht, mein API-Token zu aktualisieren. Keine Änderung.

Versionen:

GitLab        6.4.3
GitLab Shell  1.8.0
GitLab API    v3
Ruby          2.0.0p353
Rails         4.0.2
Nils
quelle

Antworten:

27

Ich habe dies gerade getestet und es sieht so aus, als ob die GitLab-API-Antwort Paginierung verwendet. Gemäß der Dokumentation ( http://api.gitlab.org ) ist die Standardanzahl der Ergebnisse pro Seite auf 20 festgelegt und die Startseite ist 1.

Um die maximalen Ergebnisse pro Seite anzupassen, müssen Sie die per_pageVariable in der HTTP-Anforderungszeile verwenden. Sie können die Seitenzahl auch mit ändern page, wenn Sie mehr Repositorys als den Maximalwert von haben per_page. Sie können einen Maximalwert per_pagevon 100 angeben .

Zum Beispiel könnte Ihre Anfrage so aussehen:

https://git.example.com/api/v3/projects/all?page=1&per_page=100&private_token=abc123

Die Variablen pageund per_pagesind nicht erforderlich, da sie Standardwerte haben. Sie müssen also auch keine einschließen, wenn Sie dies nicht möchten.

Hoffentlich löst dies Ihr Problem.

jaseeey
quelle
Das tut es in der Tat! Ich fühle mich jetzt faul und dumm;) Vielen Dank!
Nils
Keine Probleme, eine Lektion, die ich auch gelernt habe :)
jaseeey
1
Gibt es eine Möglichkeit, mehr als 100 zurückzugeben? Mein Ergebnis der Benutzeraktivität ist weit mehr als 100, aber die API gibt nur das
Maximum
Aus der API-Dokumentation geht hervor, dass der maximal zulässige per_pageWert beträgt 100. Siehe: docs.gitlab.com/ce/api/README.html#pagination
jaseeey
-1

Wenn Sie sich über die Anzahl der Seiten nicht sicher sind, verwenden Sie sie wie folgt: https://git.example.com/api/v3/projects/all?per_page=-1&private_token=some_token_key

Vrunda Kansara
quelle
listet nicht alle Projekte auf ... gib nur Standard 20 Datensätze an
Saurabh
Mir gleich. Zeigt standardmäßig nur 20 Artikel auf der ersten Seite an
Marslo
Tut nichts, gibt nur den Standardwert 20 zurück
Ivan