ios - NSURLConnection Return Cached Response Even After Resetting Authorization Heder -
so use case.
application run, authorization header set nil. fresh data.
[_request setvalue:nil forhttpheaderfield:@"authorization"];
user login, after requests server send authorization header this.
[_request setvalue:[nsstring stringwithformat:@"truerest username=%@&session_token=%@&apikey=1234567890",@"username",@"session_token"] forhttpheaderfield:@"authorization"];
now log out , every request goes authorization header nil value.
[_request setvalue:nil forhttpheaderfield:@"authorization"];
but still getting response if logged in user? idea what's issue?
request server made using follows
[nsurlconnection sendasynchronousrequest:_request queue:[nsoperationqueue mainqueue] completionhandler:^(nsurlresponse *response, nsdata *data, nserror *error) {}];
i have tried make nsmutableurlrequest in following 2 ways.
_request = [nsmutableurlrequest requestwithurl:url]; _request = [[nsmutableurlrequest alloc] initwithurl:url cachepolicy:nsurlrequestreloadrevalidatingcachedata timeoutinterval:60];
you might disable use of cookies before use request:
[_request sethttpshouldhandlecookies:no];
alternatively, delete cookie - or relevant cookie - form nshttpcookiestorage
singleton.
however, improve code using nsurlconnection
implementing delegate connection:willsendrequestforauthenticationchallenge:
able customize authentication handling.
Comments
Post a Comment