I am doing a connection to the NSURL and I need to create a request to bypass all the cache policy. I have seen examples such as :
NSURLRequest *request = [NSURLRequest requestWithURL:baseURL cachePolicy:0 timeoutInterval:10];
self.urlConnection = [[[NSURLConnection alloc] initWithRequest:request delegate:self] autorelease];
May I ask what does the cache policy 0 refers to? Have tried searching for what the number represents but I'm not getting any answer I need. Thanks! :)
you should have a look at NSURLRequestCachePolicy enum, here 0 mean is NSURLRequestUseProtocolCachePolicy, that means NSURLRequest would not load data from server every time.
According to this article: http://blackpixel.com/blog/2012/05/caching-and-nsurlconnection.html , if you are using NSURLRequestUseProtocolCachePolicy and the server does not return either expiration or max-age, the default cache time interval is 6 - 24 hours. So Be careful about this condition. It is a better practice to set max-age or expiration when using NSURLRequestUseProtocolCachePolicy.
https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSURLRequest_Class/Reference/Reference.html
Example: If you use HTTP the HTTP-Header fields will be evaluated to decide either or not caching should be used.
The right Policy in your case is: