I'm trying to figure out how to use the URL loading framework to load URLs taking advantage of caching.
I am using NSURLConnections and feeding them NSURLRequests. I have even set the cachePolicy on those requests to NSURLRequestReturnCacheDataElseLoad. The first time I load a request, it does automatically get put in the cache ([NSURLCache sharedCache]
has it). But the next time I load the same request, the NSURLConnection seems to ignore what's in the cache and reload the data.
Am I supposed to be manually implementing cache lookups and returning cached data? Does NSURLConnection not do this? Or is there some way to get the framework to use the cache seamlessly?
UPDATE: Tried the following without success:
- Setting the request cache policy to
NSURLRequestReturnCacheDataElseLoad
instead ofNSURLRequestUseProtocolCachePolicy
- Re-using the request object instead of making a new one
- Using
+[NSURLConnection sendSynchronousRequest:returningResponse:error:]
instead of loading asynchronously