2015-08-04 4 views
6

Я хотел бы получить список вопросов для проекта YYYYYY и имя пользователя XXXXXX.Как получить доступ к проблемам GitLab с использованием CURL?

curl --header "PRIVATE-TOKEN: myownprivatetoken" "https://gitlab.com/api/v3/projects/YYYYYY/issues" 

curl --header "PRIVATE-TOKEN: myownprivatetoken" --header "SUDO: XXXXXX" "https://gitlab.com/api/v3/projects/YYYYYY/issues" 

curl --header "PRIVATE-TOKEN: myownprivatetoken" "https://gitlab.com/api/v3/XXXXXX/projects/YYYYYY/issues" 

Но они возвращают только:

{"message":"404 Project Not Found"} 

или

<html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html> 

Мне кажется, что я неправильно истолковал API документы на http://doc.gitlab.com/ce/api/issues.html и http://doc.gitlab.com/ce/api/README.html.

Так что я делаю неправильно?

ответ

5

Документация сказать вам это о том, как получить вопросы из проекта:

GET /projects/:id/issues 

А вы пробовали:

curl --header "PRIVATE-TOKEN: xxx" "https://gitlab.com/api/v3/projects/YYYYYY/issues" 

Это правильно, но параметр вы даете YYYYYY должны быть id, поэтому он должен быть целым числом, а не текстом с именем или путем проекта. Вы должны использовать что-то вроде:

curl --header "PRIVATE-TOKEN: xxx" "https://gitlab.com/api/v3/projects/234/issues" 

Где 234 это идентификатор вашего проекта. Чтобы получить это целочисленный идентификатор вашего проекта, просто сделать:

curl --header "PRIVATE-TOKEN: xxx" "https://gitlab.com/api/v3/projects 

Это будет список всех ваших проектов и даст вам уникальный целочисленный идентификатор проекта в id поле:

[ 
    { 
    "id": 4,   <-------- //This one 
    "name": "my super mega project", 
    "description": null, 
    ..... 
+1

После того как вы знаю, это так очевидно, ...;) – Edward

+0

Привет, я могу выглядеть как foo, чтобы спросить об этом, но я все равно спрашиваю. Как определить страницу https://gitlab.com/api/v3/projects для моего проекта? Я не могу это понять. @edward – RosAng

+0

@RosAng: просто измените 'gitlab.com' по URL-адресу, который вы используете, чтобы посетить ваш GUI-экземпляр экземпляра GitLab. Например, если вам нужно перейти на 'mygitlabinstance.org', это будет просто' mygitlabinstance.org/api/v3/projects' – PierreF

Смежные вопросы