2013-11-19 4 views
3

im делает приложение поворота, которое будет выполнять вход на сервер; были im, используя HttpURLConnection, чтобы отправить мой запрос и получить ответ.настройка Cookie: JSESSIONID по запросу клиента вручную

проблема есть, когда httpRequest получает на сервер заголовок «Cookie: JSESSIONID», там есть идентификатор сеанса; но request.getSession (false) всегда будет возвращать null.

вот код, который я использую, чтобы установить заголовок на клиенте:

connection.setRequestProperty("Cookie: JSESSIONID", client.getSessionId()); 

любая помощь будет apprectiated

+0

жаль, если Я что-то неправильно понимаю, но какое значение возвращается из client.getSessionId()? Если он не был передан вам сервером, как вы можете ожидать, что на этом сервере существует сеанс с этим идентификатором? Файл cookie должен быть предоставлен вам сервером, а не вы сообщаете серверу о том, какой должен быть файл cookie. –

+0

client.getSessionId() вернет идентификатор сеанса, который уже задан сервером. спасибо за ваше время, это была проблема синтаксиса, и она решена сейчас :) – Gazaz

ответ

4
HttpPost httppost = new HttpPost(postData); 
CookieStore cookieStore = new BasicCookieStore(); 
BasicClientCookie cookie = new BasicClientCookie("JSESSIONID", getSessionId()); 

//cookie.setDomain("your domain"); 
cookie.setPath("/"); 

cookieStore.addCookie(cookie); 
client.setCookieStore(cookieStore); 
response = client.execute(httppost); 

Смотрите также это Java: How to make a HTTP browsing session и это Apache HttpClient 4.0.3 - how do I set cookie with sessionID for POST request

+2

Я использовал http://stackoverflow.com/questions/4166129/apache-httpclient-4-0-3-how-do-i-set- cookie-with-sessionid-for-post-request вашего ответа, и это решило мою проблему с помощью «connection.setRequestProperty (« Cookie »,« JSESSIONID = »+ client.getSessionId()); К сожалению, это была просто проблема синтаксиса: S благодарим вас за помощь и время :) – Gazaz

+1

@Gazaz Тем не менее, это правильный способ сделать это. Отсутствие синтаксических ошибок при использовании API, предоставляемого для этой цели. – EJP

+1

@EJP +1 для этого – Gazaz

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