Thanks Sebb!

I tried reading Location header in my code.

For URL http://www.opensolaris.org/jive/login!withRedirect.jspa, the contents are ultimately fetched from https://auth.opensolaris.org/login.action?targetUrl=http://www.opensolaris.org/jive/message.jspa?messageID=219909.

However, when I set method.setFollowRedirects(false), the location header says : "http://www.opensolaris.org//enter.jspa?targetPage=%2F"; when I set method.setFollowRedirects(true) , the response headers do not have location header (may be as we allow HttpClient to follow the redirects)

In short, I am not able to determine what the final URL would be based on the "Location" header. Am I missing something or it is not possible for HttpClient to keep track of the final destination URL.

Thanks,
Rutuja


On 08/09/2009, sebb <[email protected]> wrote:
On 08/09/2009, Rutuja Joshi <[email protected]> wrote:

Thanks Sebb!
 >
 >  I had actually commented out
 > method.setFollowRedirects(true) in the code thinking that
 > the default is false.When I explicitly set it to false, I get the response
 > code as 302 ("HTTP/1.1 302 Moved Temporarily") and not 304.

Just double-checked and I got 302 (not 304); but the effect is much the same.

 >
 >  Is there any way to know what the new URL is going to be from the status
 > line?


No.

 You need to look at the "Location" header.


 >  Thanks,
 >  Rutuja
 >
 >
 >  sebb wrote:
 >
 >
 > > I just tried the URL using Apache JMeter 2.3.4 which uses HC 3.1, and
 > > that shows the 304 Redirect response correctly, so long as one sets
 > >
 > > method.setFollowRedirects(false).
 > >
 > > Are you sure you are setting this correctly?
 > >
 > > On 08/09/2009, Rutuja Joshi <[email protected]> wrote:
 > >
 > >
 > > > Hi Sebb,
 > > >
 > > >  Sorry to not mention it earlier. I am using HttpClient 3.1
 > > > (commons-httpclient-3.1.jar)
 > > >
 > > >  Thanks,
 > > >  Rutuja
 > > >
 > > >  sebb wrote:
 > > >
 > > >
 > > >
 > > > > On 08/09/2009, Rutuja Joshi <[email protected]> wrote:
 > > > >
 > > > >
 > > > >
 > > > >
 > > > > > Hello,
 > > > > >
 > > > > >  I am working on the application which fetches HTTP contents given
 > the
 > > > > >
 > > > > >
 > > > >
 > > > URL.
 > > >
 > > >
 > > > >
 > > > > > If there is any redirection from the original URL, I need to find
 > out
 > > > > >
 > > > > >
 > > > >
 > > > what's
 > > >
 > > >
 > > > >
 > > > > > the destination URL from which the contents are going to be fetched
 > > > > > eventually. Then depending on the predefined criterion I would like
 > to
 > > > > > determine if the contents should be fetched from the final
 > destination
 > > > > >
 > > > > >
 > > > >
 > > > or
 > > >
 > > >
 > > > >
 > > > > > not.
 > > > > >
 > > > > >  For example, when I use HttpClient to fetch contents from URL:
 > > > > >
 > > > > >
 > > > > >
 > > > >
 > > > http://www.opensolaris.org/jive/login!withRedirect.jspa
 > > >
 > > >
 > > > >
 > > > > >  The request gets automatically redirected to
 > > > > >
 > > > > >
 > > > > >
 > > > >
 > > >
 > 
https://auth.opensolaris.org/login.action?targetUrl=http://www.opensolaris.org/jive/message.jspa?messageID=219909
 > > >
 > > >
 > > > >
 > > > > >  and HttpClient returns the html contents from
 > > > > >
 > > > > >
 > > > >
 > > > https://auth.opensolaris....
 > > >
 > > >
 > > > >
 > > > > >  Based on the return code value from method.execute() call I have no
 > way
 > > > > >
 > > > > >
 > > > >
 > > > to
 > > >
 > > >
 > > > >
 > > > > > know that this happened. The return code is 200 (HttpStatus.SC_OK).
 > > > > >
 > > > > >  I have two questions as follows:
 > > > > >  1> Is there any way to know that this  redirect happened ?
 > > > > >  2> Can I control redirects completely? Meaning, is there any way to
 > > > > >
 > > > > >
 > > > >
 > > > tell
 > > >
 > > >
 > > > >
 > > > > > HttpClient to not to fetch content from the new URL but just let the
 > > > > >
 > > > > >
 > > > >
 > > > calling
 > > >
 > > >
 > > > >
 > > > > > method know what this new URL is?
 > > > > >
 > > > > >  Please note setting method.followRedirects() to true or false did
 > not
 > > > > >
 > > > > >
 > > > >
 > > > alter
 > > >
 > > >
 > > > >
 > > > > > the behavior. Irrespective of setting this flag to false, the HTML
 > > > > >
 > > > > >
 > > > >
 > > > contents
 > > >
 > > >
 > > > >
 > > > > > were fetched from https://auth.opensolaris....
 > > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > > Which version of HttpClient are you using?
 > > > >
 > > > >
 > > > >
 > > > >
 > > > >
 > > > > >  Thanks in advance!
 > > > > >  Rutuja
 > > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > >
 > > >
 > ---------------------------------------------------------------------
 > > >
 > > >
 > > > >
 > > > > >  To unsubscribe, e-mail:
 > > > > > [email protected]
 > > > > >  For additional commands, e-mail:
 > > > > > [email protected]
 > > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > > >
 > > > >
 > > > >
 > > >
 > ---------------------------------------------------------------------
 > > >
 > > >
 > > > > To unsubscribe, e-mail:
 > > > >
 > > > >
 > > > [email protected]
 > > >
 > > >
 > > > > For additional commands, e-mail:
 > > > >
 > > > >
 > > > [email protected]
 > > >
 > > >
 > > > >
 > > > >
 > > > >
 > > >
 > > >
 > >
 > >
 > ---------------------------------------------------------------------
 > > To unsubscribe, e-mail:
 > [email protected]
 > > For additional commands, e-mail:
 > [email protected]
 > >
 > >
 > >
 >
 >


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to