Namespaces
Variants
Actions

How to resolve 302 Redirect Status

Jump to: navigation, search
Article Metadata

Article
Created: qiangsir (16 Nov 2007)
Last edited: hamishwillee (26 Jul 2012)

There is a default filter for redirect, so you must remove it to resolve 302 redirection. Otherwise you cannot receive 302 redirect header,location is null.


RHTTPFilterCollection filtColl = iSession.FilterCollection();
RStringF filterName = iSession.StringPool().StringF(HTTP::ERedirect,RHTTPSession::GetTable());
filtColl.RemoveFilter( filterName );
 
 
The Location header value in EGotResponseHeader event and you can do as below
 
RStringF location = iSession.StringPool().StringF(HTTP::ELocation,RHTTPSession::GetTable());
RHTTPHeaders responseHeaders( aTransaction.Response().GetHeaderCollection() );
THTTPHdrVal locationValue;
if( responseHeaders.GetField(location, 0, locationValue) == KErrNone )
{
TBuf8<255> urides( locationValue.StrF().DesC() );
TUriParser8 uri;
uri.Parse( urides );
aTransaction.Cancel();
iTransaction.Request().SetURIL( uri );
iTransaction.SubmitL();
}
This page was last modified on 26 July 2012, at 03:00.
93 page views in the last 30 days.
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved