Как войти в RQM с помощью REST API?

Я пытаюсь связаться с сервером IBM Rational Quality Manager, используя его REST API. Я использую плагин браузера RESTClient, и пока браузер вошел в систему, все работает как положено. Для справки, мои запросы выглядят так

https://server/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/project/testscript/urn:com.ibm.rqm:testscript:42

Однако, если я подожду достаточно долго, пока RQM выйдет из системы, REST API скажет, что мне нужно снова войти в систему, чтобы продолжить (см. ниже). Я почти уверен, что это можно сделать с помощью самого API, поскольку RQM поставляется с RQMUrlUtility, которая принимает имя пользователя и пароль и запускает в основном те же запросы REST, что и я:

java -jar RQMUrlUtility.jar -command GET -user JazzUserID -password JazzPassword -filepath pathtoFile -url REST_URL

На данный момент я нашел эта тема, объясняющая, как войти в систему, используя базовую аутентификацию HTTP. Следуя этому совету, я добавил в запрос Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ= (не мой настоящий пароль), но RQM по-прежнему не может войти в систему. Я также пытался установить User-Agent в фиктивное значение, а также отправить значение из JSESSIONID в заголовке X-Jazz-CSRF-Prevent, как описано здесь, но независимо от того, присутствуют все эти заголовки или нет, я получаю один и тот же ответ:

Status Code: 200 OK
Cache-Control: no-cache="set-cookie, set-cookie2"
Connection: Keep-Alive
Content-Encoding: gzip
Content-Language: en-US
Content-Type: text/html; charset=UTF-8
Date: Tue, 26 Jan 2016 15:48:02 GMT
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Keep-Alive: timeout=10, max=100
Set-Cookie: JazzFormAuth=Form; Path=/qm; Secure
x-com-ibm-team-scenario=ac55f959-c738-4ef0-854d-6e37648edcba%3Bname%3DInitial+Page+Load%3Bextras%3D%2Fqm%2Fauth%2Fauthrequired%2C1453823282026; Path=/
Transfer-Encoding: chunked
X-Powered-By: Servlet/3.0
X-com-ibm-team-repository-web-auth-msg: authrequired

Может ли кто-нибудь, у кого есть опыт работы с RQM API, сказать мне, что не так? Или, возможно, я упускаю что-то основное, общее для большинства API RESP?


person Dmitry Grigoryev    schedule 26.01.2016    source источник
comment
Вопрос просматривался 23 раза за две недели... правильно ли спрашивать о веб-API? Я пропустил более подходящий сайт?   -  person Dmitry Grigoryev    schedule 09.02.2016
comment
Вероятно, просто не так много людей, имеющих опыт работы с услугами IBM, по сравнению с другими услугами.   -  person Seán Hayes    schedule 16.02.2016
comment
Кажется странным, что вы получаете ответ 200, а не 401 или 403, не очень RESTful.   -  person Seán Hayes    schedule 16.02.2016


Ответы (1)


Может быть, это имя вашего заголовка?

Authorisation: Basic dXNlcm5hbWU6cGFzc3dvcmQ= 

Вероятно, должно быть:

Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ= 

Обратите внимание на букву «з».

person Seán Hayes    schedule 16.02.2016
comment
Хороший улов! К сожалению, эта опечатка только в моем вопросе, а не в моем коде. На самом деле я пробовал Authorisation: Basic dXNlcm5hbWU6cGFzc3dvcmQ= , но ответ RQM остается неизменным независимо от указанных заголовков. - person Dmitry Grigoryev; 16.02.2016
comment
Поможет ли это? ibm.com/developerworks/rational/tutorials/ - person Seán Hayes; 16.02.2016
comment
Это выглядит полезным, но мой экземпляр RQM возвращает ошибку 404 для любого ресурса /jazz. На следующей неделе у нас будет пара ребят из IBM, я спрошу их (может быть, RQM настроен неправильно). - person Dmitry Grigoryev; 16.02.2016