Sử dụng GitLab, các dự án bị thiếu trong danh sách API


18

Tôi sử dụng API GitLab để tìm nạp danh sách các dự án tôi có quyền truy cập (URL /api/v3/projects/all?private_token=xxx), nhưng có 6-7 dự án không được đưa vào danh sách vì một số lý do.

EDIT: Người dùng của tôi là quản trị viên và tôi muốn liệt kê tất cả các dự án như /projects/allURL cho biết.

Tôi có quyền truy cập vào các dự án tốt bằng cách sử dụng chính git và giao diện web GitLab. Bất kỳ đề xuất nào tại sao các dự án sẽ không được hiển thị trong danh sách từ API?

Tất cả các dự án còn thiếu đều mới hơn các dự án khác. Tôi đã thử làm mới mã thông báo API của mình; không thay đổi.

Phiên bản:

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

Câu trả lời:


27

Tôi mới thử nghiệm điều này và có vẻ như phản hồi API GitLab đang sử dụng phân trang. Theo tài liệu ( http://api.gitlab.org ), số lượng kết quả mặc định trên mỗi trang được đặt thành 20 và trang bắt đầu là 1.

Để điều chỉnh kết quả tối đa trên mỗi trang, bạn cần sử dụng per_pagebiến trong dòng yêu cầu HTTP. Bạn cũng có thể thay đổi số trang bằng cách sử dụng pagenếu bạn có nhiều kho hơn giá trị tối đa per_page. Bạn có thể chỉ định per_pagegiá trị tối đa là 100.

Ví dụ: bạn yêu cầu có thể trông giống như:

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

Các biến pageper_pagekhông được yêu cầu vì chúng có các giá trị mặc định, vì vậy bạn không cần đưa vào nếu bạn không muốn.

Hy vọng điều này giải quyết vấn đề của bạn.


Nó thực sự! Tôi cảm thấy lười biếng và ngu ngốc bây giờ;) Cảm ơn rất nhiều!
Nils

Không có vấn đề gì, một bài học kinh nghiệm cho bản thân tôi quá :)
jaseeey

1
Có cách nào để trả lại hơn 100 không? Kết quả hoạt động của người dùng của tôi là hơn 100 nhưng api chỉ trả về tối đa 100.
emmdee

Từ việc xem tài liệu API, có vẻ như per_pagegiá trị tối đa được phép là 100. Tham khảo: docs.gitlab.com/ce/api/README.html#pagination
jaseeey


-1

Nếu bạn không chắc chắn về số lượng trang sử dụng nó như dưới đây: https://git.example.com/api/v3/projects/all?per_page=-1&private_token=some_token_key


không liệt kê tất cả các dự án ... chỉ cung cấp 20 hồ sơ mặc định
Saurabh

Giống tôi. Chỉ hiển thị 20 mục mặc định trong trang đầu tiên
Marslo

không làm gì cả, chỉ trả về mặc định 20
Ivan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.