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

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.


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


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.