Sample code for 30+ languages & platforms
Objective-C

Fetch Web Pages from Local Cache

See more HTTP Examples

Demonstrates how to keep a local cache to avoid re-fetching web pages.

Chilkat Objective-C Downloads

Objective-C
#import <CkoHttp.h>
#import <NSString.h>

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

CkoHttp *http = [[CkoHttp alloc] init];

//  Define a cache directory and set the number of levels based on the anticipated size of the cache.
[http AddCacheRoot: @"c:/example/httpCache/"];

//  up to 256 sub-directories under the cache root will be created as needed to hold cached GET's.
http.NumCacheLevels = [NSNumber numberWithInt:1];

//  Tell the http object to fetch from the cache if possible.
http.FetchFromCache = YES;

//  Also tell the http object to update the cache with newly fetched pages.
http.UpdateCache = YES;

//  This HTTP GET should result in a cache file getting created.
NSString *html = [http QuickGetStr: @"https://www.google.com/"];
if (http.LastMethodSuccess == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

//  The 1st GET was not from cache:
NSLog(@"%@%d",@"Fetched from cache: ",http.LastFromCache);

//  Fetching again will cause the page to be delivered from our local cache.
html = [http QuickGetStr: @"https://www.google.com/"];
if (http.LastMethodSuccess == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

//  The 2nd GET is from cache:
NSLog(@"%@%d",@"Fetched from cache: ",http.LastFromCache);