Use NSURLCache
Here is the code
Swift
// Create URLRequest
var request: URLRequest? = nil
if let url = URL(string: "YOUR_URL") {
request = URLRequest(url: url)
}
// Check the cache.
var cachedResponse: CachedURLResponse? = nil
if let request = request {
cachedResponse = URLCache.shared.cachedResponse(for: request)
}
print(cachedResponse != nil ? "Cached response found!" : "No cached response found.")
// Load the cache
do {
if let request = request {
try NSURLConnection.sendSynchronousRequest(request, returning: nil)
}
} catch {
}
Obj-C
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:@"YOUR_URL"]];
// Check the cache.
NSCachedURLResponse *cachedResponse = [[NSURLCache sharedURLCache] cachedResponseForRequest:request];
NSLog(cachedResponse ? @"Cached response found!" : @"No cached response found.");
//Load cache
[NSURLConnection sendSynchronousRequest:request returningResponse:NULL error:NULL];