2012-05-22 2 views
1

Что я пытаюсь сделать, так это получить данные JSON (независимо от того, что он просто удостоверится, что я могу получить что-нибудь в порядке) от Rallydev без входа, чтобы убедиться, что Rallydev есть. Я пробовал несколько способов, но каждый путь требует имени пользователя и пароля. Кто-нибудь предоставит URI для этого? Спасибо вам, ребята. Все, что вы дадите, будет оценено по достоинству.Как я могу получить данные JSON из API Rallydev rest без входа в систему

String url = "link"; 
Client client = Client.create(); 
WebResource webResource = client.resource(url); 
String s = webResource.get(String.class); 

try { 
    // check if RallyDev service is up 
    if (s.contains("Hello it is now ")) 
     _log.information("RallyDev is working... at " + new Date()); 

} catch (Exception e) { 
    _log.error(ErrorCodeEnum.INTERNAL_ERROR, "RallyDev service might be down!!! in " + new Date(), e); 
} 
+2

Нэнси, добро пожаловать в StackOverflow ! Лучший способ получить хорошие ответы здесь - написать потрясающий вопрос. Сегодня ваш счастливый день, потому что вы говорите, что уже написали код. Отправьте этот код здесь, и я уверен, что здесь люди будут рады помочь. Удачи! – jmort253

+0

Спасибо, jmort253. Я помещаю свой код ниже: – Nancy

+0

String url = "https://rally1.rallydev.com/slm/webservice/1.29"; Клиент client = Client.create(); WebResource webResource = client.resource (url); Строка s = webResource.get (String.класс); try { // проверьте, работает ли служба RallyDev if (s.contains («Hello is now»)) \t _log.information («RallyDev работает ... в» + новая дата()); } catch (Исключение e) { _log.error (ErrorCodeEnum.INTERNAL_ERROR, «Служба RallyDev может быть недоступна !!!» в «+ new Date(), e); } – Nancy

ответ

2

Хорошо, так ли это клиент Джерси или простой HTTP GET против ралли, я возвращаюсь к своему первоначальному комментарию, что разработка Java-приложения для этого немного переборщила. Вы могли бы сделать то же самое с завитком командой однострочным в Linux:

curl -u '[email protected]:rallypassword' https://rally1.rallydev.com/slm/webservice/1.33/hierarchicalrequirement.js?pagesize=1 

Действительных (ралли и отвечает) ответ на это может выглядеть следующим образом:

{"QueryResult": {"_rallyAPIMajor": "1", "_rallyAPIMinor": "33", "Errors": [], "Warnings": [], "TotalResultCount": 84, "StartIndex": 1, "PageSize": 1, "Results": [{"_rallyAPIMajor": "1", "_rallyAPIMinor": "33", "_ref": "https://rally1.rallydev.com/slm/webservice/1.33/hierarchicalrequirement/12345678910.js", "_refObjectName": "My Story Name", "_type": "HierarchicalRequirement"}]}} 
1

Похоже, вы используете Джерси-клиент для установки соединения REST на Java. Вам действительно нужно это делать без предоставления учетных данных? Вам нужно будет передать учетные данные какого-либо типа, так как любая конечная точка, запрашиваемая в Rally, потребует базовой проверки подлинности HTTP.

Если вы ищете соответствующий синтаксис REST и конечные точки, чтобы сформулировать правильный запрос, вы можете посмотреть на нашей документации API WebServices на REST запросах:

https://rally1.rallydev.com/slm/doc/webservice/rest.jsp

В качестве примера, действительный URL-адрес REST для выполнения запроса и возврата результатов, полученных в формате JSON, выглядит следующим образом. GET против следующего URL выборки запросов пользовательских историй, принадлежащих пользователю: [email protected]:

https://rally1.rallydev.com/slm/webservice/1.33/hierarchicalrequirement.js?query=(Owner = "[email protected]") & размер_страницы = 1

Это возвращает первый соответствующий User Story ,

Простой пример доступа к услугам по ралли REST в Java здесь:

http://www.rallydev.com/help/basic-rest-client-operations-java

И полный (альфа-релиз) Java REST API инструментарий для ралли здесь:

http://www.rallydev.com/developer/java-toolkit-rally-rest-api

Все вышеперечисленное кажется немного лишним, чтобы узнать, работает ли ралли. Вы можете подписаться на обновления статуса Rally через RSS по адресу http://status.rallydev.com в качестве хорошего способа оставаться в курсе информации о состоянии системы.

Надеюсь, это поможет - если ответ не соответствует цели, пожалуйста, предоставьте дополнительные поясняющие комментарии, и мы сделаем все возможное, чтобы ответить.

+0

Спасибо за ваш ответ, Марк. Приятно, чтобы люди отвечали на мой вопрос. :-) Я думаю, что URL-адрес с адресом электронной почты в качестве параметра должен быть помог. Я собираюсь попробовать это прямо сейчас. 10 мин. Назад Я дам отзыв. – Nancy

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

  • Нет связанных вопросов^_^