You are viewing a plain text version of this content. The canonical link for it is here.
Posted to httpclient-users@hc.apache.org by Andreas Blomqvist <bl...@gmail.com> on 2010/02/18 14:49:12 UTC
login problems with post and redirect.
Hi
Doing a POST login to a site (which I dont control) and manually
redirecting. However I am not getting logged in until I make a second call
to the login method. Why?
My code for login :
private HttpContext login(DefaultHttpClient httpClient, String button,
String user, String pass) throws UnsupportedEncodingException, IOException {
HttpResponse response = null;
HttpEntity entity = null;
HttpPost httpost = new HttpPost(BASE_URL +
"/index.php?func=do_login");
List<NameValuePair> nvps = new ArrayList<NameValuePair>();
nvps.add(new BasicNameValuePair("btn_login", button));
nvps.add(new BasicNameValuePair("txt_login", user));
nvps.add(new BasicNameValuePair("psw_password", pass));
httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
HttpContext context = new BasicHttpContext();
response = httpClient.execute(httpost, context);
System.out.println("Post status is " + response.getStatusLine());
entity = response.getEntity();
if (entity != null) {
entity.consumeContent();
}
HttpUriRequest request = (HttpUriRequest) context.getAttribute(
ExecutionContext.HTTP_REQUEST);
String uri = BASE_URL + request.getURI().toString();
System.out.println("uri in login " + uri);
HttpGet redirect = new HttpGet(uri);
response = httpClient.execute(redirect, context);
System.out.println("Redirect HttpGet status is " +
response.getStatusLine());
entity = response.getEntity();
if (entity != null) {
entity.consumeContent();
}
return context;
}
After a call to this method I get output: (checking login status is method I
made to check for att logout link on the page.
[java] Post status is HTTP/1.1 302
[java] uri in login url_to_first_page
[java] Redirect HttpGet status is HTTP/1.1 200
[java] Checking login statuts: false
Any thoughts?
/A
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
This seems to do the trick:
httpClient.getParams().setParameter(
ClientPNames.COOKIE_POLICY, CookiePolicy.RFC_2965);
working now.
/A
On 19 February 2010 18:20, Andreas Blomqvist <bl...@gmail.com>wrote:
> Since I am reusing my context between calls, im trying to have the same
> cookie store in the context like this:
>
>
> context = new BasicHttpContext();
> response = httpClient.execute(httpost, context);
> CookieStore cookieStore = (CookieStore)
> httpClient.getCookieStore();
> context.setAttribute(ClientContext.COOKIE_STORE, cookieStore);
>
> But when I make another get request , the cookie changes. Log from call
>
> ---> First post with form:
>
> [java] 2010-feb-19 17:15:33
> org.apache.http.client.protocol.RequestAddCookies process
>
> [java] FIN: CookieSpec selected: best-match
> [java] 2010-feb-19 17:15:33
> org.apache.http.client.protocol.RequestAddCookies process
> [java] FIN: Cookie [version: 0][name: PHPSESSID][value: *
> ud60eqh6ihuje5veg03ct7ri44]*[domain: schema.sthlm.friskissvettis.se][path:
> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
> [java] 2010-feb-19 17:15:33
> org.apache.http.impl.client.DefaultRequestDirector execute
>
> [java] FIN: Attempt 1 to execute request
>
> --> new get request (redirect)
>
> [java] 2010-feb-19 17:15:34
> org.apache.http.client.protocol.ResponseProcessCookies processCookies
> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value: *
> fltgeoj2joikbdlv4fe3un22t5*][domain: schema.sthlm.friskissvettis.se][path:
> /][expiry: null]".
>
> Why is the cookie not the same?
>
> Thx
> A
>
>
> On 19 February 2010 17:49, Andreas Blomqvist <bl...@gmail.com>wrote:
>
>> Do I need to handle the Cookies manually? From the logs it looks like I'm
>> getting lots of different cookies. How do i set the cookie in the context ?
>>
>> Thx
>> A
>>
>>
>> On 19 February 2010 13:59, Andreas Blomqvist <blomqvist.andreas@gmail.com
>> > wrote:
>>
>>> "HttpClient handles all types of redirects automatically, except those
>>> explicitly prohibited by the HTTP specification as requiring user
>>> intervention" but isnt 302 such a code that doesnt allow redirect? Thats why
>>> I try to manually redirect in my code. But it doesnt seem to work.
>>>
>>> Thx
>>> A
>>>
>>>
>>> On 19 February 2010 12:05, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>
>>>> Andreas Blomqvist wrote:
>>>>
>>>>> I guess you mean this line:
>>>>>
>>>>> [java] 2010-feb-19 10:46:34
>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>>
>>>>> I cant find that package anywhere in my libs. Very strange. But if we
>>>>> assume
>>>>> that it is 4.0 thats running (code wise) how do I set the redirect ?
>>>>>
>>>>> /A
>>>>>
>>>>>
>>>>
>>>> http://hc.apache.org/httpcomponents-client/tutorial/html/httpagent.html#d4e1199
>>>>
>>>>
>>>> Oleg
>>>>
>>>>
>>>>> On 19 February 2010 11:16, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>>>
>>>>> Andreas Blomqvist wrote:
>>>>>>
>>>>>> Hi
>>>>>>>
>>>>>>> I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars.
>>>>>>> Is
>>>>>>> that
>>>>>>> not version 4 of HttpClient ?
>>>>>>>
>>>>>>> My code is trying to login in on a webpage by posting a form. But i'm
>>>>>>> not
>>>>>>> getting logged in until i make a second call with this code.
>>>>>>>
>>>>>>> What doesnt look right? the code or the logs (or both :) )
>>>>>>>
>>>>>>> Thx
>>>>>>>
>>>>>>> A
>>>>>>>
>>>>>>>
>>>>>>> I am confused too, because I clearly see a log entry generated by
>>>>>> HttpClient 3.
>>>>>>
>>>>>> Oleg
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org>
>>>>>> wrote:
>>>>>>
>>>>>>> Andreas Blomqvist wrote:
>>>>>>>
>>>>>>>> Thats for httpClient 3 ?
>>>>>>>>
>>>>>>>>> /A
>>>>>>>>>
>>>>>>>>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>> It says redirect is disabled? How do enable it? I thought redirect
>>>>>>>>> was
>>>>>>>>> on
>>>>>>>>>
>>>>>>>>> by default, but did not work for POST
>>>>>>>>>>
>>>>>>>>>>> Looking for - HttpMethod#followRedirects() ?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>>>>>>>>
>>>>>>>>>> Cheers
>>>>>>>>>> Avlesh
>>>>>>>>>>
>>>>>>>>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>>>>>>>>> blomqvist.andreas@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>> Hi
>>>>>>>>>>
>>>>>>>>>> Here some loggs from when I tried to logon:
>>>>>>>>>>>
>>>>>>>>>>> [java] The server is running at http://localhost:8282/
>>>>>>>>>>> [java] Got request method login
>>>>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>>>>>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>>>>>>>>
>>>>>>>>>>> This log comes from HttpClient 3 (org.apache.commons.httpclient
>>>>>>>>>>> name
>>>>>>>>>>>
>>>>>>>>>> space), whereas all others come from HttpClient 4
>>>>>>>> (org.apache.http.client
>>>>>>>> name space).
>>>>>>>>
>>>>>>>> I have no idea what your application is supposed to do, but this
>>>>>>>> certainly
>>>>>>>> does not look right to me.
>>>>>>>>
>>>>>>>> Oleg
>>>>>>>>
>>>>>>>>
>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>
>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>>> processCookies
>>>>>>>>>
>>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name:
>>>>>>>>>>> PHPSESSID][value:
>>>>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain:
>>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>>
>>>>>>>>>>> ][path:
>>>>>>>>>>>
>>>>>>>>>> /][expiry: null]".
>>>>>>>>>>
>>>>>>>>>>> [java] http://url_to_server/index.php?func=do_login
>>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain:
>>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>>
>>>>>>>>>>> ][path:
>>>>>>>>>>>
>>>>>>>>>> /][expiry: null] match [
>>>>>>>>>> schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>>>>>
>>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>>>>> processCookies
>>>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name:
>>>>>>>>>>> PHPSESSID][value:
>>>>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain:
>>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>>
>>>>>>>>>>> ][path:
>>>>>>>>>>>
>>>>>>>>>> /][expiry: null]".
>>>>>>>>>>
>>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain:
>>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>>
>>>>>>>>>>> ][path:
>>>>>>>>>>>
>>>>>>>>>> /][expiry: null] match [
>>>>>>>>>> schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>>>>>
>>>>>>>>>>> [java] context:
>>>>>>>>>>> org.apache.http.protocol.BasicHttpContext@148e798
>>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>>>>> processCookies
>>>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name:
>>>>>>>>>>> PHPSESSID][value:
>>>>>>>>>>> 7ugatbbqeku112d8atm9b9qr34][domain:
>>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>>
>>>>>>>>>>> ][path:
>>>>>>>>>>>
>>>>>>>>>> /][expiry: null]".
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> It says redirect is disabled? How do enable it? I thought
>>>>>>>>>>> redirect was
>>>>>>>>>>> on
>>>>>>>>>>> by
>>>>>>>>>>> default, but did not work for POST
>>>>>>>>>>>
>>>>>>>>>>> /A
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Andreas Blomqvist wrote:
>>>>>>>>>>>
>>>>>>>>>>> Hi
>>>>>>>>>>>>
>>>>>>>>>>>> Doing a POST login to a site (which I dont control) and
>>>>>>>>>>>>> manually
>>>>>>>>>>>>> redirecting. However I am not getting logged in until I make a
>>>>>>>>>>>>> second
>>>>>>>>>>>>>
>>>>>>>>>>>>> call
>>>>>>>>>>>>>
>>>>>>>>>>>> to the login method. Why?
>>>>>>>>>>>>
>>>>>>>>>>>> My code for login :
>>>>>>>>>>>>>
>>>>>>>>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>>>>>>>>
>>>>>>>>>>>>> button,
>>>>>>>>>>>>>
>>>>>>>>>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>>>>>>>
>>>>>>>>>>> IOException
>>>>>>>>>>>> {
>>>>>>>>>>>>
>>>>>>>>>>>> HttpResponse response = null;
>>>>>>>>>>>>> HttpEntity entity = null;
>>>>>>>>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>>>>>>>>> "/index.php?func=do_login");
>>>>>>>>>>>>>
>>>>>>>>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>>>>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>>>>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>>>>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>>>>>>>>
>>>>>>>>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps,
>>>>>>>>>>>>> HTTP.UTF_8));
>>>>>>>>>>>>>
>>>>>>>>>>>>> HttpContext context = new BasicHttpContext();
>>>>>>>>>>>>> response = httpClient.execute(httpost, context);
>>>>>>>>>>>>>
>>>>>>>>>>>>> System.out.println("Post status is " +
>>>>>>>>>>>>>
>>>>>>>>>>>>> response.getStatusLine());
>>>>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>>>>> if (entity != null) {
>>>>>>>>>>>>> entity.consumeContent();
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> HttpUriRequest request = (HttpUriRequest)
>>>>>>>>>>>>> context.getAttribute(
>>>>>>>>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>>>>>>>>
>>>>>>>>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>>>>>>>>
>>>>>>>>>>>>> System.out.println("uri in login " + uri);
>>>>>>>>>>>>>
>>>>>>>>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>>>>>>>>> response = httpClient.execute(redirect, context);
>>>>>>>>>>>>>
>>>>>>>>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>>>>>>>>> response.getStatusLine());
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>>>>> if (entity != null) {
>>>>>>>>>>>>> entity.consumeContent();
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> return context;
>>>>>>>>>>>>> }
>>>>>>>>>>>>>
>>>>>>>>>>>>> After a call to this method I get output: (checking login
>>>>>>>>>>>>> status is
>>>>>>>>>>>>>
>>>>>>>>>>>>> method
>>>>>>>>>>>>>
>>>>>>>>>>>> I
>>>>>>>>>>>>
>>>>>>>>>>>> made to check for att logout link on the page.
>>>>>>>>>>>>>
>>>>>>>>>>>>> [java] Post status is HTTP/1.1 302
>>>>>>>>>>>>> [java] uri in login url_to_first_page
>>>>>>>>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>>>>>>>>> [java] Checking login statuts: false
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Any thoughts?
>>>>>>>>>>>>>
>>>>>>>>>>>>> /A
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Post wire log
>>>>>>>>>>>>>
>>>>>>>>>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>> To unsubscribe, e-mail:
>>>>>>>>>>>> httpclient-users-unsubscribe@hc.apache.org
>>>>>>>>>>>> For additional commands, e-mail:
>>>>>>>>>>>> httpclient-users-help@hc.apache.org
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>
>>>>>>>>>>> To unsubscribe, e-mail:
>>>>>>>> httpclient-users-unsubscribe@hc.apache.org
>>>>>>>> For additional commands, e-mail:
>>>>>>>> httpclient-users-help@hc.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>
>>>>
>>>
>>
>
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
Since I am reusing my context between calls, im trying to have the same
cookie store in the context like this:
context = new BasicHttpContext();
response = httpClient.execute(httpost, context);
CookieStore cookieStore = (CookieStore) httpClient.getCookieStore();
context.setAttribute(ClientContext.COOKIE_STORE, cookieStore);
But when I make another get request , the cookie changes. Log from call
---> First post with form:
[java] 2010-feb-19 17:15:33
org.apache.http.client.protocol.RequestAddCookies process
[java] FIN: CookieSpec selected: best-match
[java] 2010-feb-19 17:15:33
org.apache.http.client.protocol.RequestAddCookies process
[java] FIN: Cookie [version: 0][name: PHPSESSID][value: *
ud60eqh6ihuje5veg03ct7ri44]*[domain: schema.sthlm.friskissvettis.se][path:
/][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
[java] 2010-feb-19 17:15:33
org.apache.http.impl.client.DefaultRequestDirector execute
[java] FIN: Attempt 1 to execute request
--> new get request (redirect)
[java] 2010-feb-19 17:15:34
org.apache.http.client.protocol.ResponseProcessCookies processCookies
[java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value: *
fltgeoj2joikbdlv4fe3un22t5*][domain: schema.sthlm.friskissvettis.se][path:
/][expiry: null]".
Why is the cookie not the same?
Thx
A
On 19 February 2010 17:49, Andreas Blomqvist <bl...@gmail.com>wrote:
> Do I need to handle the Cookies manually? From the logs it looks like I'm
> getting lots of different cookies. How do i set the cookie in the context ?
>
> Thx
> A
>
>
> On 19 February 2010 13:59, Andreas Blomqvist <bl...@gmail.com>wrote:
>
>> "HttpClient handles all types of redirects automatically, except those
>> explicitly prohibited by the HTTP specification as requiring user
>> intervention" but isnt 302 such a code that doesnt allow redirect? Thats why
>> I try to manually redirect in my code. But it doesnt seem to work.
>>
>> Thx
>> A
>>
>>
>> On 19 February 2010 12:05, Oleg Kalnichevski <ol...@apache.org> wrote:
>>
>>> Andreas Blomqvist wrote:
>>>
>>>> I guess you mean this line:
>>>>
>>>> [java] 2010-feb-19 10:46:34
>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>
>>>> I cant find that package anywhere in my libs. Very strange. But if we
>>>> assume
>>>> that it is 4.0 thats running (code wise) how do I set the redirect ?
>>>>
>>>> /A
>>>>
>>>>
>>>
>>> http://hc.apache.org/httpcomponents-client/tutorial/html/httpagent.html#d4e1199
>>>
>>>
>>> Oleg
>>>
>>>
>>>> On 19 February 2010 11:16, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>>
>>>> Andreas Blomqvist wrote:
>>>>>
>>>>> Hi
>>>>>>
>>>>>> I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars.
>>>>>> Is
>>>>>> that
>>>>>> not version 4 of HttpClient ?
>>>>>>
>>>>>> My code is trying to login in on a webpage by posting a form. But i'm
>>>>>> not
>>>>>> getting logged in until i make a second call with this code.
>>>>>>
>>>>>> What doesnt look right? the code or the logs (or both :) )
>>>>>>
>>>>>> Thx
>>>>>>
>>>>>> A
>>>>>>
>>>>>>
>>>>>> I am confused too, because I clearly see a log entry generated by
>>>>> HttpClient 3.
>>>>>
>>>>> Oleg
>>>>>
>>>>>
>>>>>
>>>>> On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org>
>>>>> wrote:
>>>>>
>>>>>> Andreas Blomqvist wrote:
>>>>>>
>>>>>>> Thats for httpClient 3 ?
>>>>>>>
>>>>>>>> /A
>>>>>>>>
>>>>>>>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>>>>>>>
>>>>>>>> It says redirect is disabled? How do enable it? I thought redirect
>>>>>>>> was
>>>>>>>> on
>>>>>>>>
>>>>>>>> by default, but did not work for POST
>>>>>>>>>
>>>>>>>>>> Looking for - HttpMethod#followRedirects() ?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>>>>>>>
>>>>>>>>> Cheers
>>>>>>>>> Avlesh
>>>>>>>>>
>>>>>>>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>>>>>>>> blomqvist.andreas@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>> Hi
>>>>>>>>>
>>>>>>>>> Here some loggs from when I tried to logon:
>>>>>>>>>>
>>>>>>>>>> [java] The server is running at http://localhost:8282/
>>>>>>>>>> [java] Got request method login
>>>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>>>>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>>>>>>>
>>>>>>>>>> This log comes from HttpClient 3 (org.apache.commons.httpclient
>>>>>>>>>> name
>>>>>>>>>>
>>>>>>>>> space), whereas all others come from HttpClient 4
>>>>>>> (org.apache.http.client
>>>>>>> name space).
>>>>>>>
>>>>>>> I have no idea what your application is supposed to do, but this
>>>>>>> certainly
>>>>>>> does not look right to me.
>>>>>>>
>>>>>>> Oleg
>>>>>>>
>>>>>>>
>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>
>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>> processCookies
>>>>>>>>
>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain:
>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>
>>>>>>>>>> ][path:
>>>>>>>>>>
>>>>>>>>> /][expiry: null]".
>>>>>>>>>
>>>>>>>>>> [java] http://url_to_server/index.php?func=do_login
>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain:
>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>
>>>>>>>>>> ][path:
>>>>>>>>>>
>>>>>>>>> /][expiry: null] match [
>>>>>>>>> schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>>>>
>>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>>>> processCookies
>>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name:
>>>>>>>>>> PHPSESSID][value:
>>>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain:
>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>
>>>>>>>>>> ][path:
>>>>>>>>>>
>>>>>>>>> /][expiry: null]".
>>>>>>>>>
>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain:
>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>
>>>>>>>>>> ][path:
>>>>>>>>>>
>>>>>>>>> /][expiry: null] match [
>>>>>>>>> schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>>>>
>>>>>>>>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>>>> processCookies
>>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name:
>>>>>>>>>> PHPSESSID][value:
>>>>>>>>>> 7ugatbbqeku112d8atm9b9qr34][domain:
>>>>>>>>>> schema.sthlm.friskissvettis.se
>>>>>>>>>>
>>>>>>>>>> ][path:
>>>>>>>>>>
>>>>>>>>> /][expiry: null]".
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> It says redirect is disabled? How do enable it? I thought redirect
>>>>>>>>>> was
>>>>>>>>>> on
>>>>>>>>>> by
>>>>>>>>>> default, but did not work for POST
>>>>>>>>>>
>>>>>>>>>> /A
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>> Andreas Blomqvist wrote:
>>>>>>>>>>
>>>>>>>>>> Hi
>>>>>>>>>>>
>>>>>>>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>>>>>>>>> redirecting. However I am not getting logged in until I make a
>>>>>>>>>>>> second
>>>>>>>>>>>>
>>>>>>>>>>>> call
>>>>>>>>>>>>
>>>>>>>>>>> to the login method. Why?
>>>>>>>>>>>
>>>>>>>>>>> My code for login :
>>>>>>>>>>>>
>>>>>>>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>>>>>>>
>>>>>>>>>>>> button,
>>>>>>>>>>>>
>>>>>>>>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>>>>>>
>>>>>>>>>> IOException
>>>>>>>>>>> {
>>>>>>>>>>>
>>>>>>>>>>> HttpResponse response = null;
>>>>>>>>>>>> HttpEntity entity = null;
>>>>>>>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>>>>>>>> "/index.php?func=do_login");
>>>>>>>>>>>>
>>>>>>>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>>>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>>>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>>>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>>>>>>>
>>>>>>>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps,
>>>>>>>>>>>> HTTP.UTF_8));
>>>>>>>>>>>>
>>>>>>>>>>>> HttpContext context = new BasicHttpContext();
>>>>>>>>>>>> response = httpClient.execute(httpost, context);
>>>>>>>>>>>>
>>>>>>>>>>>> System.out.println("Post status is " +
>>>>>>>>>>>>
>>>>>>>>>>>> response.getStatusLine());
>>>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>>>> if (entity != null) {
>>>>>>>>>>>> entity.consumeContent();
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> HttpUriRequest request = (HttpUriRequest)
>>>>>>>>>>>> context.getAttribute(
>>>>>>>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>>>>>>>
>>>>>>>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>>>>>>>
>>>>>>>>>>>> System.out.println("uri in login " + uri);
>>>>>>>>>>>>
>>>>>>>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>>>>>>>> response = httpClient.execute(redirect, context);
>>>>>>>>>>>>
>>>>>>>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>>>>>>>> response.getStatusLine());
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>>>> if (entity != null) {
>>>>>>>>>>>> entity.consumeContent();
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> return context;
>>>>>>>>>>>> }
>>>>>>>>>>>>
>>>>>>>>>>>> After a call to this method I get output: (checking login status
>>>>>>>>>>>> is
>>>>>>>>>>>>
>>>>>>>>>>>> method
>>>>>>>>>>>>
>>>>>>>>>>> I
>>>>>>>>>>>
>>>>>>>>>>> made to check for att logout link on the page.
>>>>>>>>>>>>
>>>>>>>>>>>> [java] Post status is HTTP/1.1 302
>>>>>>>>>>>> [java] uri in login url_to_first_page
>>>>>>>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>>>>>>>> [java] Checking login statuts: false
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Any thoughts?
>>>>>>>>>>>>
>>>>>>>>>>>> /A
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Post wire log
>>>>>>>>>>>>
>>>>>>>>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>> To unsubscribe, e-mail:
>>>>>>>>>>> httpclient-users-unsubscribe@hc.apache.org
>>>>>>>>>>> For additional commands, e-mail:
>>>>>>>>>>> httpclient-users-help@hc.apache.org
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>
>>>>>>>>>> To unsubscribe, e-mail:
>>>>>>> httpclient-users-unsubscribe@hc.apache.org
>>>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>
>>>
>>
>
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
Do I need to handle the Cookies manually? From the logs it looks like I'm
getting lots of different cookies. How do i set the cookie in the context ?
Thx
A
On 19 February 2010 13:59, Andreas Blomqvist <bl...@gmail.com>wrote:
> "HttpClient handles all types of redirects automatically, except those
> explicitly prohibited by the HTTP specification as requiring user
> intervention" but isnt 302 such a code that doesnt allow redirect? Thats why
> I try to manually redirect in my code. But it doesnt seem to work.
>
> Thx
> A
>
>
> On 19 February 2010 12:05, Oleg Kalnichevski <ol...@apache.org> wrote:
>
>> Andreas Blomqvist wrote:
>>
>>> I guess you mean this line:
>>>
>>> [java] 2010-feb-19 10:46:34
>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>
>>> I cant find that package anywhere in my libs. Very strange. But if we
>>> assume
>>> that it is 4.0 thats running (code wise) how do I set the redirect ?
>>>
>>> /A
>>>
>>>
>>
>> http://hc.apache.org/httpcomponents-client/tutorial/html/httpagent.html#d4e1199
>>
>>
>> Oleg
>>
>>
>>> On 19 February 2010 11:16, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>
>>> Andreas Blomqvist wrote:
>>>>
>>>> Hi
>>>>>
>>>>> I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars. Is
>>>>> that
>>>>> not version 4 of HttpClient ?
>>>>>
>>>>> My code is trying to login in on a webpage by posting a form. But i'm
>>>>> not
>>>>> getting logged in until i make a second call with this code.
>>>>>
>>>>> What doesnt look right? the code or the logs (or both :) )
>>>>>
>>>>> Thx
>>>>>
>>>>> A
>>>>>
>>>>>
>>>>> I am confused too, because I clearly see a log entry generated by
>>>> HttpClient 3.
>>>>
>>>> Oleg
>>>>
>>>>
>>>>
>>>> On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>>
>>>>> Andreas Blomqvist wrote:
>>>>>
>>>>>> Thats for httpClient 3 ?
>>>>>>
>>>>>>> /A
>>>>>>>
>>>>>>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>>>>>>
>>>>>>> It says redirect is disabled? How do enable it? I thought redirect
>>>>>>> was
>>>>>>> on
>>>>>>>
>>>>>>> by default, but did not work for POST
>>>>>>>>
>>>>>>>>> Looking for - HttpMethod#followRedirects() ?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>>>>>>
>>>>>>>> Cheers
>>>>>>>> Avlesh
>>>>>>>>
>>>>>>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>>>>>>> blomqvist.andreas@gmail.com> wrote:
>>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>> Here some loggs from when I tried to logon:
>>>>>>>>>
>>>>>>>>> [java] The server is running at http://localhost:8282/
>>>>>>>>> [java] Got request method login
>>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>>>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>>>>>>
>>>>>>>>> This log comes from HttpClient 3 (org.apache.commons.httpclient
>>>>>>>>> name
>>>>>>>>>
>>>>>>>> space), whereas all others come from HttpClient 4
>>>>>> (org.apache.http.client
>>>>>> name space).
>>>>>>
>>>>>> I have no idea what your application is supposed to do, but this
>>>>>> certainly
>>>>>> does not look right to me.
>>>>>>
>>>>>> Oleg
>>>>>>
>>>>>>
>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>
>>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>>>
>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>>>>
>>>>>>>>> ][path:
>>>>>>>>>
>>>>>>>> /][expiry: null]".
>>>>>>>>
>>>>>>>>> [java] http://url_to_server/index.php?func=do_login
>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>>>>
>>>>>>>>> ][path:
>>>>>>>>>
>>>>>>>> /][expiry: null] match [
>>>>>>>> schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>>>
>>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>>> processCookies
>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>>>>
>>>>>>>>> ][path:
>>>>>>>>>
>>>>>>>> /][expiry: null]".
>>>>>>>>
>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>>>>
>>>>>>>>> ][path:
>>>>>>>>>
>>>>>>>> /][expiry: null] match [
>>>>>>>> schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>>>
>>>>>>>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>>> processCookies
>>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>>>> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
>>>>>>>>>
>>>>>>>>> ][path:
>>>>>>>>>
>>>>>>>> /][expiry: null]".
>>>>>>>>
>>>>>>>>>
>>>>>>>>> It says redirect is disabled? How do enable it? I thought redirect
>>>>>>>>> was
>>>>>>>>> on
>>>>>>>>> by
>>>>>>>>> default, but did not work for POST
>>>>>>>>>
>>>>>>>>> /A
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> Andreas Blomqvist wrote:
>>>>>>>>>
>>>>>>>>> Hi
>>>>>>>>>>
>>>>>>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>>>>>>>> redirecting. However I am not getting logged in until I make a
>>>>>>>>>>> second
>>>>>>>>>>>
>>>>>>>>>>> call
>>>>>>>>>>>
>>>>>>>>>> to the login method. Why?
>>>>>>>>>>
>>>>>>>>>> My code for login :
>>>>>>>>>>>
>>>>>>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>>>>>>
>>>>>>>>>>> button,
>>>>>>>>>>>
>>>>>>>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>>>>>
>>>>>>>>> IOException
>>>>>>>>>> {
>>>>>>>>>>
>>>>>>>>>> HttpResponse response = null;
>>>>>>>>>>> HttpEntity entity = null;
>>>>>>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>>>>>>> "/index.php?func=do_login");
>>>>>>>>>>>
>>>>>>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>>>>>>
>>>>>>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps,
>>>>>>>>>>> HTTP.UTF_8));
>>>>>>>>>>>
>>>>>>>>>>> HttpContext context = new BasicHttpContext();
>>>>>>>>>>> response = httpClient.execute(httpost, context);
>>>>>>>>>>>
>>>>>>>>>>> System.out.println("Post status is " +
>>>>>>>>>>>
>>>>>>>>>>> response.getStatusLine());
>>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>>> if (entity != null) {
>>>>>>>>>>> entity.consumeContent();
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> HttpUriRequest request = (HttpUriRequest)
>>>>>>>>>>> context.getAttribute(
>>>>>>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>>>>>>
>>>>>>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>>>>>>
>>>>>>>>>>> System.out.println("uri in login " + uri);
>>>>>>>>>>>
>>>>>>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>>>>>>> response = httpClient.execute(redirect, context);
>>>>>>>>>>>
>>>>>>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>>>>>>> response.getStatusLine());
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>>> if (entity != null) {
>>>>>>>>>>> entity.consumeContent();
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> return context;
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> After a call to this method I get output: (checking login status
>>>>>>>>>>> is
>>>>>>>>>>>
>>>>>>>>>>> method
>>>>>>>>>>>
>>>>>>>>>> I
>>>>>>>>>>
>>>>>>>>>> made to check for att logout link on the page.
>>>>>>>>>>>
>>>>>>>>>>> [java] Post status is HTTP/1.1 302
>>>>>>>>>>> [java] uri in login url_to_first_page
>>>>>>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>>>>>>> [java] Checking login statuts: false
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Any thoughts?
>>>>>>>>>>>
>>>>>>>>>>> /A
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Post wire log
>>>>>>>>>>>
>>>>>>>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>> To unsubscribe, e-mail:
>>>>>>>>>> httpclient-users-unsubscribe@hc.apache.org
>>>>>>>>>> For additional commands, e-mail:
>>>>>>>>>> httpclient-users-help@hc.apache.org
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>
>>>>
>>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>
>>
>
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
"HttpClient handles all types of redirects automatically, except those
explicitly prohibited by the HTTP specification as requiring user
intervention" but isnt 302 such a code that doesnt allow redirect? Thats why
I try to manually redirect in my code. But it doesnt seem to work.
Thx
A
On 19 February 2010 12:05, Oleg Kalnichevski <ol...@apache.org> wrote:
> Andreas Blomqvist wrote:
>
>> I guess you mean this line:
>>
>> [java] 2010-feb-19 10:46:34
>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>
>> I cant find that package anywhere in my libs. Very strange. But if we
>> assume
>> that it is 4.0 thats running (code wise) how do I set the redirect ?
>>
>> /A
>>
>>
>
> http://hc.apache.org/httpcomponents-client/tutorial/html/httpagent.html#d4e1199
>
>
> Oleg
>
>
>> On 19 February 2010 11:16, Oleg Kalnichevski <ol...@apache.org> wrote:
>>
>> Andreas Blomqvist wrote:
>>>
>>> Hi
>>>>
>>>> I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars. Is
>>>> that
>>>> not version 4 of HttpClient ?
>>>>
>>>> My code is trying to login in on a webpage by posting a form. But i'm
>>>> not
>>>> getting logged in until i make a second call with this code.
>>>>
>>>> What doesnt look right? the code or the logs (or both :) )
>>>>
>>>> Thx
>>>>
>>>> A
>>>>
>>>>
>>>> I am confused too, because I clearly see a log entry generated by
>>> HttpClient 3.
>>>
>>> Oleg
>>>
>>>
>>>
>>> On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>
>>>> Andreas Blomqvist wrote:
>>>>
>>>>> Thats for httpClient 3 ?
>>>>>
>>>>>> /A
>>>>>>
>>>>>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>>>>>
>>>>>> It says redirect is disabled? How do enable it? I thought redirect
>>>>>> was
>>>>>> on
>>>>>>
>>>>>> by default, but did not work for POST
>>>>>>>
>>>>>>>> Looking for - HttpMethod#followRedirects() ?
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>>>>>
>>>>>>> Cheers
>>>>>>> Avlesh
>>>>>>>
>>>>>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>>>>>> blomqvist.andreas@gmail.com> wrote:
>>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>> Here some loggs from when I tried to logon:
>>>>>>>>
>>>>>>>> [java] The server is running at http://localhost:8282/
>>>>>>>> [java] Got request method login
>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>>>>>
>>>>>>>> This log comes from HttpClient 3 (org.apache.commons.httpclient
>>>>>>>> name
>>>>>>>>
>>>>>>> space), whereas all others come from HttpClient 4
>>>>> (org.apache.http.client
>>>>> name space).
>>>>>
>>>>> I have no idea what your application is supposed to do, but this
>>>>> certainly
>>>>> does not look right to me.
>>>>>
>>>>> Oleg
>>>>>
>>>>>
>>>>> [java] 2010-feb-19 07:48:46
>>>>>
>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>>
>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>>>
>>>>>>>> ][path:
>>>>>>>>
>>>>>>> /][expiry: null]".
>>>>>>>
>>>>>>>> [java] http://url_to_server/index.php?func=do_login
>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>>>
>>>>>>>> ][path:
>>>>>>>>
>>>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php
>>>>>>> ]
>>>>>>>
>>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>> processCookies
>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>>>
>>>>>>>> ][path:
>>>>>>>>
>>>>>>> /][expiry: null]".
>>>>>>>
>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>>>
>>>>>>>> ][path:
>>>>>>>>
>>>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php
>>>>>>> ]
>>>>>>>
>>>>>>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies
>>>>>>>> processCookies
>>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>>> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
>>>>>>>>
>>>>>>>> ][path:
>>>>>>>>
>>>>>>> /][expiry: null]".
>>>>>>>
>>>>>>>>
>>>>>>>> It says redirect is disabled? How do enable it? I thought redirect
>>>>>>>> was
>>>>>>>> on
>>>>>>>> by
>>>>>>>> default, but did not work for POST
>>>>>>>>
>>>>>>>> /A
>>>>>>>>
>>>>>>>>
>>>>>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Andreas Blomqvist wrote:
>>>>>>>>
>>>>>>>> Hi
>>>>>>>>>
>>>>>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>>>>>>> redirecting. However I am not getting logged in until I make a
>>>>>>>>>> second
>>>>>>>>>>
>>>>>>>>>> call
>>>>>>>>>>
>>>>>>>>> to the login method. Why?
>>>>>>>>>
>>>>>>>>> My code for login :
>>>>>>>>>>
>>>>>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>>>>>
>>>>>>>>>> button,
>>>>>>>>>>
>>>>>>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>>>>
>>>>>>>> IOException
>>>>>>>>> {
>>>>>>>>>
>>>>>>>>> HttpResponse response = null;
>>>>>>>>>> HttpEntity entity = null;
>>>>>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>>>>>> "/index.php?func=do_login");
>>>>>>>>>>
>>>>>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>>>>>
>>>>>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>>>>>>>>>>
>>>>>>>>>> HttpContext context = new BasicHttpContext();
>>>>>>>>>> response = httpClient.execute(httpost, context);
>>>>>>>>>>
>>>>>>>>>> System.out.println("Post status is " +
>>>>>>>>>>
>>>>>>>>>> response.getStatusLine());
>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>> if (entity != null) {
>>>>>>>>>> entity.consumeContent();
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> HttpUriRequest request = (HttpUriRequest)
>>>>>>>>>> context.getAttribute(
>>>>>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>>>>>
>>>>>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>>>>>
>>>>>>>>>> System.out.println("uri in login " + uri);
>>>>>>>>>>
>>>>>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>>>>>> response = httpClient.execute(redirect, context);
>>>>>>>>>>
>>>>>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>>>>>> response.getStatusLine());
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> entity = response.getEntity();
>>>>>>>>>> if (entity != null) {
>>>>>>>>>> entity.consumeContent();
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> return context;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> After a call to this method I get output: (checking login status
>>>>>>>>>> is
>>>>>>>>>>
>>>>>>>>>> method
>>>>>>>>>>
>>>>>>>>> I
>>>>>>>>>
>>>>>>>>> made to check for att logout link on the page.
>>>>>>>>>>
>>>>>>>>>> [java] Post status is HTTP/1.1 302
>>>>>>>>>> [java] uri in login url_to_first_page
>>>>>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>>>>>> [java] Checking login statuts: false
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Any thoughts?
>>>>>>>>>>
>>>>>>>>>> /A
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Post wire log
>>>>>>>>>>
>>>>>>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>>>>>> For additional commands, e-mail:
>>>>>>>>> httpclient-users-help@hc.apache.org
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>
>>>
>>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>
Re: login problems with post and redirect.
Posted by Oleg Kalnichevski <ol...@apache.org>.
Andreas Blomqvist wrote:
> I guess you mean this line:
>
> [java] 2010-feb-19 10:46:34
> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>
> I cant find that package anywhere in my libs. Very strange. But if we assume
> that it is 4.0 thats running (code wise) how do I set the redirect ?
>
> /A
>
http://hc.apache.org/httpcomponents-client/tutorial/html/httpagent.html#d4e1199
Oleg
>
> On 19 February 2010 11:16, Oleg Kalnichevski <ol...@apache.org> wrote:
>
>> Andreas Blomqvist wrote:
>>
>>> Hi
>>>
>>> I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars. Is
>>> that
>>> not version 4 of HttpClient ?
>>>
>>> My code is trying to login in on a webpage by posting a form. But i'm not
>>> getting logged in until i make a second call with this code.
>>>
>>> What doesnt look right? the code or the logs (or both :) )
>>>
>>> Thx
>>>
>>> A
>>>
>>>
>> I am confused too, because I clearly see a log entry generated by
>> HttpClient 3.
>>
>> Oleg
>>
>>
>>
>> On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org> wrote:
>>> Andreas Blomqvist wrote:
>>>> Thats for httpClient 3 ?
>>>>> /A
>>>>>
>>>>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>>>>
>>>>> It says redirect is disabled? How do enable it? I thought redirect was
>>>>> on
>>>>>
>>>>>> by default, but did not work for POST
>>>>>>> Looking for - HttpMethod#followRedirects() ?
>>>>>>>
>>>>>>
>>>>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>>>>
>>>>>> Cheers
>>>>>> Avlesh
>>>>>>
>>>>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>>>>> blomqvist.andreas@gmail.com> wrote:
>>>>>>
>>>>>> Hi
>>>>>>
>>>>>>> Here some loggs from when I tried to logon:
>>>>>>>
>>>>>>> [java] The server is running at http://localhost:8282/
>>>>>>> [java] Got request method login
>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>> [java] 2010-feb-19 07:48:45
>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>>>>
>>>>>>> This log comes from HttpClient 3 (org.apache.commons.httpclient name
>>>> space), whereas all others come from HttpClient 4 (org.apache.http.client
>>>> name space).
>>>>
>>>> I have no idea what your application is supposed to do, but this
>>>> certainly
>>>> does not look right to me.
>>>>
>>>> Oleg
>>>>
>>>>
>>>> [java] 2010-feb-19 07:48:46
>>>>
>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>>
>>>>>>> ][path:
>>>>>> /][expiry: null]".
>>>>>>> [java] http://url_to_server/index.php?func=do_login
>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>>
>>>>>>> ][path:
>>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>> [java] 2010-feb-19 07:48:46
>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>>
>>>>>>> ][path:
>>>>>> /][expiry: null]".
>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>>
>>>>>>> ][path:
>>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>>>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>>> [java] 2010-feb-19 07:48:47
>>>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>>> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
>>>>>>>
>>>>>>> ][path:
>>>>>> /][expiry: null]".
>>>>>>>
>>>>>>> It says redirect is disabled? How do enable it? I thought redirect was
>>>>>>> on
>>>>>>> by
>>>>>>> default, but did not work for POST
>>>>>>>
>>>>>>> /A
>>>>>>>
>>>>>>>
>>>>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org>
>>>>>>> wrote:
>>>>>>>
>>>>>>> Andreas Blomqvist wrote:
>>>>>>>
>>>>>>>> Hi
>>>>>>>>
>>>>>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>>>>>> redirecting. However I am not getting logged in until I make a
>>>>>>>>> second
>>>>>>>>>
>>>>>>>>> call
>>>>>>>> to the login method. Why?
>>>>>>>>
>>>>>>>>> My code for login :
>>>>>>>>>
>>>>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>>>>
>>>>>>>>> button,
>>>>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>>>
>>>>>>>> IOException
>>>>>>>> {
>>>>>>>>
>>>>>>>>> HttpResponse response = null;
>>>>>>>>> HttpEntity entity = null;
>>>>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>>>>> "/index.php?func=do_login");
>>>>>>>>>
>>>>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>>>>
>>>>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>>>>>>>>>
>>>>>>>>> HttpContext context = new BasicHttpContext();
>>>>>>>>> response = httpClient.execute(httpost, context);
>>>>>>>>>
>>>>>>>>> System.out.println("Post status is " +
>>>>>>>>>
>>>>>>>>> response.getStatusLine());
>>>>>>>>> entity = response.getEntity();
>>>>>>>>> if (entity != null) {
>>>>>>>>> entity.consumeContent();
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
>>>>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>>>>
>>>>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>>>>
>>>>>>>>> System.out.println("uri in login " + uri);
>>>>>>>>>
>>>>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>>>>> response = httpClient.execute(redirect, context);
>>>>>>>>>
>>>>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>>>>> response.getStatusLine());
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> entity = response.getEntity();
>>>>>>>>> if (entity != null) {
>>>>>>>>> entity.consumeContent();
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> return context;
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> After a call to this method I get output: (checking login status is
>>>>>>>>>
>>>>>>>>> method
>>>>>>>> I
>>>>>>>>
>>>>>>>>> made to check for att logout link on the page.
>>>>>>>>>
>>>>>>>>> [java] Post status is HTTP/1.1 302
>>>>>>>>> [java] uri in login url_to_first_page
>>>>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>>>>> [java] Checking login statuts: false
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Any thoughts?
>>>>>>>>>
>>>>>>>>> /A
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Post wire log
>>>>>>>>>
>>>>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>
>>>>
>>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>
>>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
I guess you mean this line:
[java] 2010-feb-19 10:46:34
org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
I cant find that package anywhere in my libs. Very strange. But if we assume
that it is 4.0 thats running (code wise) how do I set the redirect ?
/A
On 19 February 2010 11:16, Oleg Kalnichevski <ol...@apache.org> wrote:
> Andreas Blomqvist wrote:
>
>> Hi
>>
>> I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars. Is
>> that
>> not version 4 of HttpClient ?
>>
>> My code is trying to login in on a webpage by posting a form. But i'm not
>> getting logged in until i make a second call with this code.
>>
>> What doesnt look right? the code or the logs (or both :) )
>>
>> Thx
>>
>> A
>>
>>
> I am confused too, because I clearly see a log entry generated by
> HttpClient 3.
>
> Oleg
>
>
>
> On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org> wrote:
>>
>> Andreas Blomqvist wrote:
>>>
>>> Thats for httpClient 3 ?
>>>>
>>>> /A
>>>>
>>>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>>>
>>>> It says redirect is disabled? How do enable it? I thought redirect was
>>>> on
>>>>
>>>>> by default, but did not work for POST
>>>>>>
>>>>>> Looking for - HttpMethod#followRedirects() ?
>>>>>>
>>>>>
>>>>>
>>>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>>>
>>>>> Cheers
>>>>> Avlesh
>>>>>
>>>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>>>> blomqvist.andreas@gmail.com> wrote:
>>>>>
>>>>> Hi
>>>>>
>>>>>> Here some loggs from when I tried to logon:
>>>>>>
>>>>>> [java] The server is running at http://localhost:8282/
>>>>>> [java] Got request method login
>>>>>> [java] 2010-feb-19 07:48:45
>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>> [java] 2010-feb-19 07:48:45
>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>> [java] 2010-feb-19 07:48:46
>>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>>>
>>>>>> This log comes from HttpClient 3 (org.apache.commons.httpclient name
>>> space), whereas all others come from HttpClient 4 (org.apache.http.client
>>> name space).
>>>
>>> I have no idea what your application is supposed to do, but this
>>> certainly
>>> does not look right to me.
>>>
>>> Oleg
>>>
>>>
>>> [java] 2010-feb-19 07:48:46
>>>
>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>
>>>>>> ][path:
>>>>>
>>>>> /][expiry: null]".
>>>>>> [java] http://url_to_server/index.php?func=do_login
>>>>>> [java] 2010-feb-19 07:48:46
>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>> [java] 2010-feb-19 07:48:46
>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>>
>>>>>> ][path:
>>>>>
>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>>>> [java] 2010-feb-19 07:48:46
>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>> [java] 2010-feb-19 07:48:47
>>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>
>>>>>> ][path:
>>>>>
>>>>> /][expiry: null]".
>>>>>> [java] 2010-feb-19 07:48:47
>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>> [java] FIN: CookieSpec selected: best-match
>>>>>> [java] 2010-feb-19 07:48:47
>>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>>
>>>>>> ][path:
>>>>>
>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>>>>> [java] 2010-feb-19 07:48:47
>>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>>> [java] FIN: Attempt 1 to execute request
>>>>>> [java] 2010-feb-19 07:48:47
>>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>>> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
>>>>>>
>>>>>> ][path:
>>>>>
>>>>> /][expiry: null]".
>>>>>>
>>>>>>
>>>>>> It says redirect is disabled? How do enable it? I thought redirect was
>>>>>> on
>>>>>> by
>>>>>> default, but did not work for POST
>>>>>>
>>>>>> /A
>>>>>>
>>>>>>
>>>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org>
>>>>>> wrote:
>>>>>>
>>>>>> Andreas Blomqvist wrote:
>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>>>>> redirecting. However I am not getting logged in until I make a
>>>>>>>> second
>>>>>>>>
>>>>>>>> call
>>>>>>> to the login method. Why?
>>>>>>>
>>>>>>>> My code for login :
>>>>>>>>
>>>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>>>
>>>>>>>> button,
>>>>>>>
>>>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>>
>>>>>>> IOException
>>>>>>> {
>>>>>>>
>>>>>>>> HttpResponse response = null;
>>>>>>>> HttpEntity entity = null;
>>>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>>>> "/index.php?func=do_login");
>>>>>>>>
>>>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>>>
>>>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>>>>>>>>
>>>>>>>> HttpContext context = new BasicHttpContext();
>>>>>>>> response = httpClient.execute(httpost, context);
>>>>>>>>
>>>>>>>> System.out.println("Post status is " +
>>>>>>>>
>>>>>>>> response.getStatusLine());
>>>>>>>
>>>>>>>> entity = response.getEntity();
>>>>>>>> if (entity != null) {
>>>>>>>> entity.consumeContent();
>>>>>>>> }
>>>>>>>>
>>>>>>>> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
>>>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>>>
>>>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>>>
>>>>>>>> System.out.println("uri in login " + uri);
>>>>>>>>
>>>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>>>> response = httpClient.execute(redirect, context);
>>>>>>>>
>>>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>>>> response.getStatusLine());
>>>>>>>>
>>>>>>>>
>>>>>>>> entity = response.getEntity();
>>>>>>>> if (entity != null) {
>>>>>>>> entity.consumeContent();
>>>>>>>> }
>>>>>>>>
>>>>>>>> return context;
>>>>>>>> }
>>>>>>>>
>>>>>>>> After a call to this method I get output: (checking login status is
>>>>>>>>
>>>>>>>> method
>>>>>>> I
>>>>>>>
>>>>>>>> made to check for att logout link on the page.
>>>>>>>>
>>>>>>>> [java] Post status is HTTP/1.1 302
>>>>>>>> [java] uri in login url_to_first_page
>>>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>>>> [java] Checking login statuts: false
>>>>>>>>
>>>>>>>>
>>>>>>>> Any thoughts?
>>>>>>>>
>>>>>>>> /A
>>>>>>>>
>>>>>>>>
>>>>>>>> Post wire log
>>>>>>>>
>>>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>
>>>
>>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>
Re: login problems with post and redirect.
Posted by Oleg Kalnichevski <ol...@apache.org>.
Andreas Blomqvist wrote:
> Hi
>
> I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars. Is that
> not version 4 of HttpClient ?
>
> My code is trying to login in on a webpage by posting a form. But i'm not
> getting logged in until i make a second call with this code.
>
> What doesnt look right? the code or the logs (or both :) )
>
> Thx
>
> A
>
I am confused too, because I clearly see a log entry generated by
HttpClient 3.
Oleg
> On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org> wrote:
>
>> Andreas Blomqvist wrote:
>>
>>> Thats for httpClient 3 ?
>>>
>>> /A
>>>
>>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>>
>>> It says redirect is disabled? How do enable it? I thought redirect was on
>>>>> by default, but did not work for POST
>>>>>
>>>>> Looking for - HttpMethod#followRedirects() ?
>>>>
>>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>>
>>>> Cheers
>>>> Avlesh
>>>>
>>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>>> blomqvist.andreas@gmail.com> wrote:
>>>>
>>>> Hi
>>>>> Here some loggs from when I tried to logon:
>>>>>
>>>>> [java] The server is running at http://localhost:8282/
>>>>> [java] Got request method login
>>>>> [java] 2010-feb-19 07:48:45
>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>> [java] FIN: CookieSpec selected: best-match
>>>>> [java] 2010-feb-19 07:48:45
>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>> [java] FIN: Attempt 1 to execute request
>>>>> [java] 2010-feb-19 07:48:46
>>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>>
>> This log comes from HttpClient 3 (org.apache.commons.httpclient name
>> space), whereas all others come from HttpClient 4 (org.apache.http.client
>> name space).
>>
>> I have no idea what your application is supposed to do, but this certainly
>> does not look right to me.
>>
>> Oleg
>>
>>
>> [java] 2010-feb-19 07:48:46
>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>
>>>> ][path:
>>>>
>>>>> /][expiry: null]".
>>>>> [java] http://url_to_server/index.php?func=do_login
>>>>> [java] 2010-feb-19 07:48:46
>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>> [java] FIN: CookieSpec selected: best-match
>>>>> [java] 2010-feb-19 07:48:46
>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>>
>>>> ][path:
>>>>
>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>>> [java] 2010-feb-19 07:48:46
>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>> [java] FIN: Attempt 1 to execute request
>>>>> [java] 2010-feb-19 07:48:47
>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>
>>>> ][path:
>>>>
>>>>> /][expiry: null]".
>>>>> [java] 2010-feb-19 07:48:47
>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>> [java] FIN: CookieSpec selected: best-match
>>>>> [java] 2010-feb-19 07:48:47
>>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>>
>>>> ][path:
>>>>
>>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>>>> [java] 2010-feb-19 07:48:47
>>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>>> [java] FIN: Attempt 1 to execute request
>>>>> [java] 2010-feb-19 07:48:47
>>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>>> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
>>>>>
>>>> ][path:
>>>>
>>>>> /][expiry: null]".
>>>>>
>>>>>
>>>>> It says redirect is disabled? How do enable it? I thought redirect was
>>>>> on
>>>>> by
>>>>> default, but did not work for POST
>>>>>
>>>>> /A
>>>>>
>>>>>
>>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>>>
>>>>> Andreas Blomqvist wrote:
>>>>>> Hi
>>>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>>>> redirecting. However I am not getting logged in until I make a second
>>>>>>>
>>>>>> call
>>>>>> to the login method. Why?
>>>>>>> My code for login :
>>>>>>>
>>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>>
>>>>>> button,
>>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>> IOException
>>>>>> {
>>>>>>> HttpResponse response = null;
>>>>>>> HttpEntity entity = null;
>>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>>> "/index.php?func=do_login");
>>>>>>>
>>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>>
>>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>>>>>>>
>>>>>>> HttpContext context = new BasicHttpContext();
>>>>>>> response = httpClient.execute(httpost, context);
>>>>>>>
>>>>>>> System.out.println("Post status is " +
>>>>>>>
>>>>>> response.getStatusLine());
>>>>>>> entity = response.getEntity();
>>>>>>> if (entity != null) {
>>>>>>> entity.consumeContent();
>>>>>>> }
>>>>>>>
>>>>>>> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
>>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>>
>>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>>
>>>>>>> System.out.println("uri in login " + uri);
>>>>>>>
>>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>>> response = httpClient.execute(redirect, context);
>>>>>>>
>>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>>> response.getStatusLine());
>>>>>>>
>>>>>>>
>>>>>>> entity = response.getEntity();
>>>>>>> if (entity != null) {
>>>>>>> entity.consumeContent();
>>>>>>> }
>>>>>>>
>>>>>>> return context;
>>>>>>> }
>>>>>>>
>>>>>>> After a call to this method I get output: (checking login status is
>>>>>>>
>>>>>> method
>>>>>> I
>>>>>>> made to check for att logout link on the page.
>>>>>>>
>>>>>>> [java] Post status is HTTP/1.1 302
>>>>>>> [java] uri in login url_to_first_page
>>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>>> [java] Checking login statuts: false
>>>>>>>
>>>>>>>
>>>>>>> Any thoughts?
>>>>>>>
>>>>>>> /A
>>>>>>>
>>>>>>>
>>>>>>> Post wire log
>>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>>
>>>>>>
>>>>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>
>>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
Hi
I'm confused. Im using httpclient, httpcore and httpmime 4.0.1 jars. Is that
not version 4 of HttpClient ?
My code is trying to login in on a webpage by posting a form. But i'm not
getting logged in until i make a second call with this code.
What doesnt look right? the code or the logs (or both :) )
Thx
A
On 19 February 2010 10:54, Oleg Kalnichevski <ol...@apache.org> wrote:
> Andreas Blomqvist wrote:
>
>> Thats for httpClient 3 ?
>>
>> /A
>>
>> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>>
>> It says redirect is disabled? How do enable it? I thought redirect was on
>>>> by default, but did not work for POST
>>>>
>>>> Looking for - HttpMethod#followRedirects() ?
>>>
>>>
>>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>>
>>> Cheers
>>> Avlesh
>>>
>>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>>> blomqvist.andreas@gmail.com> wrote:
>>>
>>> Hi
>>>>
>>>> Here some loggs from when I tried to logon:
>>>>
>>>> [java] The server is running at http://localhost:8282/
>>>> [java] Got request method login
>>>> [java] 2010-feb-19 07:48:45
>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>> [java] FIN: CookieSpec selected: best-match
>>>> [java] 2010-feb-19 07:48:45
>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>> [java] FIN: Attempt 1 to execute request
>>>> [java] 2010-feb-19 07:48:46
>>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>>> [java] INFO: Redirect requested but followRedirects is disabled
>>>>
>>>
> This log comes from HttpClient 3 (org.apache.commons.httpclient name
> space), whereas all others come from HttpClient 4 (org.apache.http.client
> name space).
>
> I have no idea what your application is supposed to do, but this certainly
> does not look right to me.
>
> Oleg
>
>
> [java] 2010-feb-19 07:48:46
>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>
>>> ][path:
>>>
>>>> /][expiry: null]".
>>>> [java] http://url_to_server/index.php?func=do_login
>>>> [java] 2010-feb-19 07:48:46
>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>> [java] FIN: CookieSpec selected: best-match
>>>> [java] 2010-feb-19 07:48:46
>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>>>>
>>> ][path:
>>>
>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>> [java] 2010-feb-19 07:48:46
>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>> [java] FIN: Attempt 1 to execute request
>>>> [java] 2010-feb-19 07:48:47
>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>
>>> ][path:
>>>
>>>> /][expiry: null]".
>>>> [java] 2010-feb-19 07:48:47
>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>> [java] FIN: CookieSpec selected: best-match
>>>> [java] 2010-feb-19 07:48:47
>>>> org.apache.http.client.protocol.RequestAddCookies process
>>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>>>>
>>> ][path:
>>>
>>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>>> [java] 2010-feb-19 07:48:47
>>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>>> [java] FIN: Attempt 1 to execute request
>>>> [java] 2010-feb-19 07:48:47
>>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>>> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
>>>>
>>> ][path:
>>>
>>>> /][expiry: null]".
>>>>
>>>>
>>>> It says redirect is disabled? How do enable it? I thought redirect was
>>>> on
>>>> by
>>>> default, but did not work for POST
>>>>
>>>> /A
>>>>
>>>>
>>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>>
>>>> Andreas Blomqvist wrote:
>>>>>
>>>>> Hi
>>>>>>
>>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>>> redirecting. However I am not getting logged in until I make a second
>>>>>>
>>>>> call
>>>>
>>>>> to the login method. Why?
>>>>>>
>>>>>> My code for login :
>>>>>>
>>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>>>>>>
>>>>> button,
>>>
>>>> String user, String pass) throws UnsupportedEncodingException,
>>>>>>
>>>>> IOException
>>>>
>>>>> {
>>>>>>
>>>>>> HttpResponse response = null;
>>>>>> HttpEntity entity = null;
>>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>>> "/index.php?func=do_login");
>>>>>>
>>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>>
>>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>>>>>>
>>>>>> HttpContext context = new BasicHttpContext();
>>>>>> response = httpClient.execute(httpost, context);
>>>>>>
>>>>>> System.out.println("Post status is " +
>>>>>>
>>>>> response.getStatusLine());
>>>
>>>>
>>>>>> entity = response.getEntity();
>>>>>> if (entity != null) {
>>>>>> entity.consumeContent();
>>>>>> }
>>>>>>
>>>>>> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
>>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>>
>>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>>
>>>>>> System.out.println("uri in login " + uri);
>>>>>>
>>>>>> HttpGet redirect = new HttpGet(uri);
>>>>>> response = httpClient.execute(redirect, context);
>>>>>>
>>>>>> System.out.println("Redirect HttpGet status is " +
>>>>>> response.getStatusLine());
>>>>>>
>>>>>>
>>>>>> entity = response.getEntity();
>>>>>> if (entity != null) {
>>>>>> entity.consumeContent();
>>>>>> }
>>>>>>
>>>>>> return context;
>>>>>> }
>>>>>>
>>>>>> After a call to this method I get output: (checking login status is
>>>>>>
>>>>> method
>>>>
>>>>> I
>>>>>> made to check for att logout link on the page.
>>>>>>
>>>>>> [java] Post status is HTTP/1.1 302
>>>>>> [java] uri in login url_to_first_page
>>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>>> [java] Checking login statuts: false
>>>>>>
>>>>>>
>>>>>> Any thoughts?
>>>>>>
>>>>>> /A
>>>>>>
>>>>>>
>>>>>> Post wire log
>>>>>
>>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>
>>>>>
>>>>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>
Re: login problems with post and redirect.
Posted by Oleg Kalnichevski <ol...@apache.org>.
Andreas Blomqvist wrote:
> Thats for httpClient 3 ?
>
> /A
>
> On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
>
>>> It says redirect is disabled? How do enable it? I thought redirect was on
>>> by default, but did not work for POST
>>>
>> Looking for - HttpMethod#followRedirects() ?
>>
>> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>>
>> Cheers
>> Avlesh
>>
>> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
>> blomqvist.andreas@gmail.com> wrote:
>>
>>> Hi
>>>
>>> Here some loggs from when I tried to logon:
>>>
>>> [java] The server is running at http://localhost:8282/
>>> [java] Got request method login
>>> [java] 2010-feb-19 07:48:45
>>> org.apache.http.client.protocol.RequestAddCookies process
>>> [java] FIN: CookieSpec selected: best-match
>>> [java] 2010-feb-19 07:48:45
>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>> [java] FIN: Attempt 1 to execute request
>>> [java] 2010-feb-19 07:48:46
>>> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
>>> [java] INFO: Redirect requested but followRedirects is disabled
This log comes from HttpClient 3 (org.apache.commons.httpclient name
space), whereas all others come from HttpClient 4
(org.apache.http.client name space).
I have no idea what your application is supposed to do, but this
certainly does not look right to me.
Oleg
>>> [java] 2010-feb-19 07:48:46
>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>> ][path:
>>> /][expiry: null]".
>>> [java] http://url_to_server/index.php?func=do_login
>>> [java] 2010-feb-19 07:48:46
>>> org.apache.http.client.protocol.RequestAddCookies process
>>> [java] FIN: CookieSpec selected: best-match
>>> [java] 2010-feb-19 07:48:46
>>> org.apache.http.client.protocol.RequestAddCookies process
>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
>> ][path:
>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>> [java] 2010-feb-19 07:48:46
>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>> [java] FIN: Attempt 1 to execute request
>>> [java] 2010-feb-19 07:48:47
>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>> ][path:
>>> /][expiry: null]".
>>> [java] 2010-feb-19 07:48:47
>>> org.apache.http.client.protocol.RequestAddCookies process
>>> [java] FIN: CookieSpec selected: best-match
>>> [java] 2010-feb-19 07:48:47
>>> org.apache.http.client.protocol.RequestAddCookies process
>>> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
>>> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
>> ][path:
>>> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
>>> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
>>> [java] 2010-feb-19 07:48:47
>>> org.apache.http.impl.client.DefaultRequestDirector execute
>>> [java] FIN: Attempt 1 to execute request
>>> [java] 2010-feb-19 07:48:47
>>> org.apache.http.client.protocol.ResponseProcessCookies processCookies
>>> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
>>> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
>> ][path:
>>> /][expiry: null]".
>>>
>>>
>>> It says redirect is disabled? How do enable it? I thought redirect was on
>>> by
>>> default, but did not work for POST
>>>
>>> /A
>>>
>>>
>>> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org> wrote:
>>>
>>>> Andreas Blomqvist wrote:
>>>>
>>>>> Hi
>>>>>
>>>>> Doing a POST login to a site (which I dont control) and manually
>>>>> redirecting. However I am not getting logged in until I make a second
>>> call
>>>>> to the login method. Why?
>>>>>
>>>>> My code for login :
>>>>>
>>>>> private HttpContext login(DefaultHttpClient httpClient, String
>> button,
>>>>> String user, String pass) throws UnsupportedEncodingException,
>>> IOException
>>>>> {
>>>>>
>>>>> HttpResponse response = null;
>>>>> HttpEntity entity = null;
>>>>> HttpPost httpost = new HttpPost(BASE_URL +
>>>>> "/index.php?func=do_login");
>>>>>
>>>>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>>>>> nvps.add(new BasicNameValuePair("btn_login", button));
>>>>> nvps.add(new BasicNameValuePair("txt_login", user));
>>>>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>>>>
>>>>> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>>>>>
>>>>> HttpContext context = new BasicHttpContext();
>>>>> response = httpClient.execute(httpost, context);
>>>>>
>>>>> System.out.println("Post status is " +
>> response.getStatusLine());
>>>>>
>>>>> entity = response.getEntity();
>>>>> if (entity != null) {
>>>>> entity.consumeContent();
>>>>> }
>>>>>
>>>>> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
>>>>> ExecutionContext.HTTP_REQUEST);
>>>>>
>>>>> String uri = BASE_URL + request.getURI().toString();
>>>>>
>>>>> System.out.println("uri in login " + uri);
>>>>>
>>>>> HttpGet redirect = new HttpGet(uri);
>>>>> response = httpClient.execute(redirect, context);
>>>>>
>>>>> System.out.println("Redirect HttpGet status is " +
>>>>> response.getStatusLine());
>>>>>
>>>>>
>>>>> entity = response.getEntity();
>>>>> if (entity != null) {
>>>>> entity.consumeContent();
>>>>> }
>>>>>
>>>>> return context;
>>>>> }
>>>>>
>>>>> After a call to this method I get output: (checking login status is
>>> method
>>>>> I
>>>>> made to check for att logout link on the page.
>>>>>
>>>>> [java] Post status is HTTP/1.1 302
>>>>> [java] uri in login url_to_first_page
>>>>> [java] Redirect HttpGet status is HTTP/1.1 200
>>>>> [java] Checking login statuts: false
>>>>>
>>>>>
>>>>> Any thoughts?
>>>>>
>>>>> /A
>>>>>
>>>>>
>>>> Post wire log
>>>>
>>>> http://hc.apache.org/httpcomponents-client/logging.html
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>
>>>>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
Thats for httpClient 3 ?
/A
On 19 February 2010 08:56, Avlesh Singh <av...@gmail.com> wrote:
> >
> > It says redirect is disabled? How do enable it? I thought redirect was on
> > by default, but did not work for POST
> >
> Looking for - HttpMethod#followRedirects() ?
>
> http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
>
> Cheers
> Avlesh
>
> On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
> blomqvist.andreas@gmail.com> wrote:
>
> > Hi
> >
> > Here some loggs from when I tried to logon:
> >
> > [java] The server is running at http://localhost:8282/
> > [java] Got request method login
> > [java] 2010-feb-19 07:48:45
> > org.apache.http.client.protocol.RequestAddCookies process
> > [java] FIN: CookieSpec selected: best-match
> > [java] 2010-feb-19 07:48:45
> > org.apache.http.impl.client.DefaultRequestDirector execute
> > [java] FIN: Attempt 1 to execute request
> > [java] 2010-feb-19 07:48:46
> > org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
> > [java] INFO: Redirect requested but followRedirects is disabled
> > [java] 2010-feb-19 07:48:46
> > org.apache.http.client.protocol.ResponseProcessCookies processCookies
> > [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
> > 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
> ][path:
> > /][expiry: null]".
> > [java] http://url_to_server/index.php?func=do_login
> > [java] 2010-feb-19 07:48:46
> > org.apache.http.client.protocol.RequestAddCookies process
> > [java] FIN: CookieSpec selected: best-match
> > [java] 2010-feb-19 07:48:46
> > org.apache.http.client.protocol.RequestAddCookies process
> > [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
> > 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se
> ][path:
> > /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
> > [java] 2010-feb-19 07:48:46
> > org.apache.http.impl.client.DefaultRequestDirector execute
> > [java] FIN: Attempt 1 to execute request
> > [java] 2010-feb-19 07:48:47
> > org.apache.http.client.protocol.ResponseProcessCookies processCookies
> > [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
> > 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
> ][path:
> > /][expiry: null]".
> > [java] 2010-feb-19 07:48:47
> > org.apache.http.client.protocol.RequestAddCookies process
> > [java] FIN: CookieSpec selected: best-match
> > [java] 2010-feb-19 07:48:47
> > org.apache.http.client.protocol.RequestAddCookies process
> > [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
> > 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se
> ][path:
> > /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
> > [java] context: org.apache.http.protocol.BasicHttpContext@148e798
> > [java] 2010-feb-19 07:48:47
> > org.apache.http.impl.client.DefaultRequestDirector execute
> > [java] FIN: Attempt 1 to execute request
> > [java] 2010-feb-19 07:48:47
> > org.apache.http.client.protocol.ResponseProcessCookies processCookies
> > [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
> > 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se
> ][path:
> > /][expiry: null]".
> >
> >
> > It says redirect is disabled? How do enable it? I thought redirect was on
> > by
> > default, but did not work for POST
> >
> > /A
> >
> >
> > On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org> wrote:
> >
> > > Andreas Blomqvist wrote:
> > >
> > >> Hi
> > >>
> > >> Doing a POST login to a site (which I dont control) and manually
> > >> redirecting. However I am not getting logged in until I make a second
> > call
> > >> to the login method. Why?
> > >>
> > >> My code for login :
> > >>
> > >> private HttpContext login(DefaultHttpClient httpClient, String
> button,
> > >> String user, String pass) throws UnsupportedEncodingException,
> > IOException
> > >> {
> > >>
> > >> HttpResponse response = null;
> > >> HttpEntity entity = null;
> > >> HttpPost httpost = new HttpPost(BASE_URL +
> > >> "/index.php?func=do_login");
> > >>
> > >> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
> > >> nvps.add(new BasicNameValuePair("btn_login", button));
> > >> nvps.add(new BasicNameValuePair("txt_login", user));
> > >> nvps.add(new BasicNameValuePair("psw_password", pass));
> > >>
> > >> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
> > >>
> > >> HttpContext context = new BasicHttpContext();
> > >> response = httpClient.execute(httpost, context);
> > >>
> > >> System.out.println("Post status is " +
> response.getStatusLine());
> > >>
> > >>
> > >> entity = response.getEntity();
> > >> if (entity != null) {
> > >> entity.consumeContent();
> > >> }
> > >>
> > >> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
> > >> ExecutionContext.HTTP_REQUEST);
> > >>
> > >> String uri = BASE_URL + request.getURI().toString();
> > >>
> > >> System.out.println("uri in login " + uri);
> > >>
> > >> HttpGet redirect = new HttpGet(uri);
> > >> response = httpClient.execute(redirect, context);
> > >>
> > >> System.out.println("Redirect HttpGet status is " +
> > >> response.getStatusLine());
> > >>
> > >>
> > >> entity = response.getEntity();
> > >> if (entity != null) {
> > >> entity.consumeContent();
> > >> }
> > >>
> > >> return context;
> > >> }
> > >>
> > >> After a call to this method I get output: (checking login status is
> > method
> > >> I
> > >> made to check for att logout link on the page.
> > >>
> > >> [java] Post status is HTTP/1.1 302
> > >> [java] uri in login url_to_first_page
> > >> [java] Redirect HttpGet status is HTTP/1.1 200
> > >> [java] Checking login statuts: false
> > >>
> > >>
> > >> Any thoughts?
> > >>
> > >> /A
> > >>
> > >>
> > > Post wire log
> > >
> > > http://hc.apache.org/httpcomponents-client/logging.html
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> > > For additional commands, e-mail: httpclient-users-help@hc.apache.org
> > >
> > >
> >
>
Re: login problems with post and redirect.
Posted by Avlesh Singh <av...@gmail.com>.
>
> It says redirect is disabled? How do enable it? I thought redirect was on
> by default, but did not work for POST
>
Looking for - HttpMethod#followRedirects() ?
http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpMethod.html#setFollowRedirects%28boolean%29
Cheers
Avlesh
On Fri, Feb 19, 2010 at 1:23 PM, Andreas Blomqvist <
blomqvist.andreas@gmail.com> wrote:
> Hi
>
> Here some loggs from when I tried to logon:
>
> [java] The server is running at http://localhost:8282/
> [java] Got request method login
> [java] 2010-feb-19 07:48:45
> org.apache.http.client.protocol.RequestAddCookies process
> [java] FIN: CookieSpec selected: best-match
> [java] 2010-feb-19 07:48:45
> org.apache.http.impl.client.DefaultRequestDirector execute
> [java] FIN: Attempt 1 to execute request
> [java] 2010-feb-19 07:48:46
> org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
> [java] INFO: Redirect requested but followRedirects is disabled
> [java] 2010-feb-19 07:48:46
> org.apache.http.client.protocol.ResponseProcessCookies processCookies
> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se][path:
> /][expiry: null]".
> [java] http://url_to_server/index.php?func=do_login
> [java] 2010-feb-19 07:48:46
> org.apache.http.client.protocol.RequestAddCookies process
> [java] FIN: CookieSpec selected: best-match
> [java] 2010-feb-19 07:48:46
> org.apache.http.client.protocol.RequestAddCookies process
> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
> 9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se][path:
> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
> [java] 2010-feb-19 07:48:46
> org.apache.http.impl.client.DefaultRequestDirector execute
> [java] FIN: Attempt 1 to execute request
> [java] 2010-feb-19 07:48:47
> org.apache.http.client.protocol.ResponseProcessCookies processCookies
> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se][path:
> /][expiry: null]".
> [java] 2010-feb-19 07:48:47
> org.apache.http.client.protocol.RequestAddCookies process
> [java] FIN: CookieSpec selected: best-match
> [java] 2010-feb-19 07:48:47
> org.apache.http.client.protocol.RequestAddCookies process
> [java] FIN: Cookie [version: 0][name: PHPSESSID][value:
> 9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se][path:
> /][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
> [java] context: org.apache.http.protocol.BasicHttpContext@148e798
> [java] 2010-feb-19 07:48:47
> org.apache.http.impl.client.DefaultRequestDirector execute
> [java] FIN: Attempt 1 to execute request
> [java] 2010-feb-19 07:48:47
> org.apache.http.client.protocol.ResponseProcessCookies processCookies
> [java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
> 7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se][path:
> /][expiry: null]".
>
>
> It says redirect is disabled? How do enable it? I thought redirect was on
> by
> default, but did not work for POST
>
> /A
>
>
> On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org> wrote:
>
> > Andreas Blomqvist wrote:
> >
> >> Hi
> >>
> >> Doing a POST login to a site (which I dont control) and manually
> >> redirecting. However I am not getting logged in until I make a second
> call
> >> to the login method. Why?
> >>
> >> My code for login :
> >>
> >> private HttpContext login(DefaultHttpClient httpClient, String button,
> >> String user, String pass) throws UnsupportedEncodingException,
> IOException
> >> {
> >>
> >> HttpResponse response = null;
> >> HttpEntity entity = null;
> >> HttpPost httpost = new HttpPost(BASE_URL +
> >> "/index.php?func=do_login");
> >>
> >> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
> >> nvps.add(new BasicNameValuePair("btn_login", button));
> >> nvps.add(new BasicNameValuePair("txt_login", user));
> >> nvps.add(new BasicNameValuePair("psw_password", pass));
> >>
> >> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
> >>
> >> HttpContext context = new BasicHttpContext();
> >> response = httpClient.execute(httpost, context);
> >>
> >> System.out.println("Post status is " + response.getStatusLine());
> >>
> >>
> >> entity = response.getEntity();
> >> if (entity != null) {
> >> entity.consumeContent();
> >> }
> >>
> >> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
> >> ExecutionContext.HTTP_REQUEST);
> >>
> >> String uri = BASE_URL + request.getURI().toString();
> >>
> >> System.out.println("uri in login " + uri);
> >>
> >> HttpGet redirect = new HttpGet(uri);
> >> response = httpClient.execute(redirect, context);
> >>
> >> System.out.println("Redirect HttpGet status is " +
> >> response.getStatusLine());
> >>
> >>
> >> entity = response.getEntity();
> >> if (entity != null) {
> >> entity.consumeContent();
> >> }
> >>
> >> return context;
> >> }
> >>
> >> After a call to this method I get output: (checking login status is
> method
> >> I
> >> made to check for att logout link on the page.
> >>
> >> [java] Post status is HTTP/1.1 302
> >> [java] uri in login url_to_first_page
> >> [java] Redirect HttpGet status is HTTP/1.1 200
> >> [java] Checking login statuts: false
> >>
> >>
> >> Any thoughts?
> >>
> >> /A
> >>
> >>
> > Post wire log
> >
> > http://hc.apache.org/httpcomponents-client/logging.html
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> > For additional commands, e-mail: httpclient-users-help@hc.apache.org
> >
> >
>
Re: login problems with post and redirect.
Posted by Andreas Blomqvist <bl...@gmail.com>.
Hi
Here some loggs from when I tried to logon:
[java] The server is running at http://localhost:8282/
[java] Got request method login
[java] 2010-feb-19 07:48:45
org.apache.http.client.protocol.RequestAddCookies process
[java] FIN: CookieSpec selected: best-match
[java] 2010-feb-19 07:48:45
org.apache.http.impl.client.DefaultRequestDirector execute
[java] FIN: Attempt 1 to execute request
[java] 2010-feb-19 07:48:46
org.apache.commons.httpclient.HttpMethodDirector isRedirectNeeded
[java] INFO: Redirect requested but followRedirects is disabled
[java] 2010-feb-19 07:48:46
org.apache.http.client.protocol.ResponseProcessCookies processCookies
[java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se][path:
/][expiry: null]".
[java] http://url_to_server/index.php?func=do_login
[java] 2010-feb-19 07:48:46
org.apache.http.client.protocol.RequestAddCookies process
[java] FIN: CookieSpec selected: best-match
[java] 2010-feb-19 07:48:46
org.apache.http.client.protocol.RequestAddCookies process
[java] FIN: Cookie [version: 0][name: PHPSESSID][value:
9l8gtdf85tn4gitqjs0hg2f551][domain: schema.sthlm.friskissvettis.se][path:
/][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
[java] 2010-feb-19 07:48:46
org.apache.http.impl.client.DefaultRequestDirector execute
[java] FIN: Attempt 1 to execute request
[java] 2010-feb-19 07:48:47
org.apache.http.client.protocol.ResponseProcessCookies processCookies
[java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se][path:
/][expiry: null]".
[java] 2010-feb-19 07:48:47
org.apache.http.client.protocol.RequestAddCookies process
[java] FIN: CookieSpec selected: best-match
[java] 2010-feb-19 07:48:47
org.apache.http.client.protocol.RequestAddCookies process
[java] FIN: Cookie [version: 0][name: PHPSESSID][value:
9tteoedfpeugqb81d2750dk3q5][domain: schema.sthlm.friskissvettis.se][path:
/][expiry: null] match [schema.sthlm.friskissvettis.se:80/index.php]
[java] context: org.apache.http.protocol.BasicHttpContext@148e798
[java] 2010-feb-19 07:48:47
org.apache.http.impl.client.DefaultRequestDirector execute
[java] FIN: Attempt 1 to execute request
[java] 2010-feb-19 07:48:47
org.apache.http.client.protocol.ResponseProcessCookies processCookies
[java] FIN: Cookie accepted: "[version: 0][name: PHPSESSID][value:
7ugatbbqeku112d8atm9b9qr34][domain: schema.sthlm.friskissvettis.se][path:
/][expiry: null]".
It says redirect is disabled? How do enable it? I thought redirect was on by
default, but did not work for POST
/A
On 18 February 2010 21:17, Oleg Kalnichevski <ol...@apache.org> wrote:
> Andreas Blomqvist wrote:
>
>> Hi
>>
>> Doing a POST login to a site (which I dont control) and manually
>> redirecting. However I am not getting logged in until I make a second call
>> to the login method. Why?
>>
>> My code for login :
>>
>> private HttpContext login(DefaultHttpClient httpClient, String button,
>> String user, String pass) throws UnsupportedEncodingException, IOException
>> {
>>
>> HttpResponse response = null;
>> HttpEntity entity = null;
>> HttpPost httpost = new HttpPost(BASE_URL +
>> "/index.php?func=do_login");
>>
>> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
>> nvps.add(new BasicNameValuePair("btn_login", button));
>> nvps.add(new BasicNameValuePair("txt_login", user));
>> nvps.add(new BasicNameValuePair("psw_password", pass));
>>
>> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>>
>> HttpContext context = new BasicHttpContext();
>> response = httpClient.execute(httpost, context);
>>
>> System.out.println("Post status is " + response.getStatusLine());
>>
>>
>> entity = response.getEntity();
>> if (entity != null) {
>> entity.consumeContent();
>> }
>>
>> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
>> ExecutionContext.HTTP_REQUEST);
>>
>> String uri = BASE_URL + request.getURI().toString();
>>
>> System.out.println("uri in login " + uri);
>>
>> HttpGet redirect = new HttpGet(uri);
>> response = httpClient.execute(redirect, context);
>>
>> System.out.println("Redirect HttpGet status is " +
>> response.getStatusLine());
>>
>>
>> entity = response.getEntity();
>> if (entity != null) {
>> entity.consumeContent();
>> }
>>
>> return context;
>> }
>>
>> After a call to this method I get output: (checking login status is method
>> I
>> made to check for att logout link on the page.
>>
>> [java] Post status is HTTP/1.1 302
>> [java] uri in login url_to_first_page
>> [java] Redirect HttpGet status is HTTP/1.1 200
>> [java] Checking login statuts: false
>>
>>
>> Any thoughts?
>>
>> /A
>>
>>
> Post wire log
>
> http://hc.apache.org/httpcomponents-client/logging.html
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>
Re: login problems with post and redirect.
Posted by Oleg Kalnichevski <ol...@apache.org>.
Andreas Blomqvist wrote:
> Hi
>
> Doing a POST login to a site (which I dont control) and manually
> redirecting. However I am not getting logged in until I make a second call
> to the login method. Why?
>
> My code for login :
>
> private HttpContext login(DefaultHttpClient httpClient, String button,
> String user, String pass) throws UnsupportedEncodingException, IOException {
>
> HttpResponse response = null;
> HttpEntity entity = null;
> HttpPost httpost = new HttpPost(BASE_URL +
> "/index.php?func=do_login");
>
> List<NameValuePair> nvps = new ArrayList<NameValuePair>();
> nvps.add(new BasicNameValuePair("btn_login", button));
> nvps.add(new BasicNameValuePair("txt_login", user));
> nvps.add(new BasicNameValuePair("psw_password", pass));
>
> httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
>
> HttpContext context = new BasicHttpContext();
> response = httpClient.execute(httpost, context);
>
> System.out.println("Post status is " + response.getStatusLine());
>
>
> entity = response.getEntity();
> if (entity != null) {
> entity.consumeContent();
> }
>
> HttpUriRequest request = (HttpUriRequest) context.getAttribute(
> ExecutionContext.HTTP_REQUEST);
>
> String uri = BASE_URL + request.getURI().toString();
>
> System.out.println("uri in login " + uri);
>
> HttpGet redirect = new HttpGet(uri);
> response = httpClient.execute(redirect, context);
>
> System.out.println("Redirect HttpGet status is " +
> response.getStatusLine());
>
>
> entity = response.getEntity();
> if (entity != null) {
> entity.consumeContent();
> }
>
> return context;
> }
>
> After a call to this method I get output: (checking login status is method I
> made to check for att logout link on the page.
>
> [java] Post status is HTTP/1.1 302
> [java] uri in login url_to_first_page
> [java] Redirect HttpGet status is HTTP/1.1 200
> [java] Checking login statuts: false
>
>
> Any thoughts?
>
> /A
>
Post wire log
http://hc.apache.org/httpcomponents-client/logging.html
---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org