2015-02-16 7 views
0

В настоящее время я разрабатываю веб-приложение, которое работает на tomcat. Это веб-приложение должно получить доступ к конкретному экземпляру jira. На этом экземпляре JSP работают, который я могу назвать так:Retrieve JSessionId в jsp

String jiraURL = https://jiraurl.org/theJSP.jsp?timestamp=&__name=&__username=&__page&__target=&_sign_=; 

Я получил всю другую информацию, чтобы построить вверх URL String. Тогда я загрузить страницу как так:

<html> 
    <head> 

     <meta http-equiv="refresh" content="0;url=<%jiraURL%>" 
    </head> 
</html> 

Через страницы и цели приписывать referres сайт затем обратно в моем веб-приложение. Когда я запускаю его в хроме, например, я вижу, что есть сохраненный файл cookie под названием "JSESSIONID" для jiraurl.org. Это значение, которое я хочу получить в моем jsp-файле, так как мне нужен этот идентификатор для аутентификации с API JIRA Rest. В настоящее время я использую имя пользователя/пароль, но я хотел бы пройти аутентификацию через файлы cookie.

Также вы должны знать, что у меня нет доступа для изменения theJSP.jsp.

So: Есть ли в любом случае для получения JSESSIONID с другого сайта, который создается при запуске моего HTTP-запроса?

+0

Ваш вопрос непонятен, но похоже, что вы, вероятно, захотите [использовать OAuth] (https://developer.atlassian.com/display/JIRADEV/JIRA+REST+API+Example+-+OAuth+authentication) вместо этого , –

ответ

0

Я думаю, что вы можете использовать API-интерфейс JIRA REST/rest/auth/1/session: https://docs.atlassian.com/jira/REST/latest/#d2e3737 для аутентификации пользователя и получения JSESSIONID.

+0

Я вошел в систему, а затем направился к этому URL. Это все, что я получаю: '{" self ":" someurl "," name ":" myusername "," loginInfo ": {" loginCount ": 1}}'. Нет идентификатора сеанса. Я просмотрел веб-консоль браузеров и JSESSIONID в заголовке запроса. – user3185894

+0

Вам необходимо пройти этот метод через json через POST: { "username": "fred", "password": "freds_password" } –