Sample code for 30+ languages & platforms
Objective-C

Persist Cookies to XML Files and Auto Re-Send

See more HTTP Examples

Demonstrates how to persist incoming cookies to XML files and automatically re-send in subsesquent HTTP requests.

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];

//  To save cookies to XML files (per domain) in a specific
//  directory, set the CookieDir property (the directory must
//  already exist and be writeable by the caller).  Also,
//  set the SaveCookies property:
http.CookieDir = @"/cookieDir";
http.SaveCookies = YES;

//  Any methods that do a GET, POST, etc. will save cookies
//  to the CookieDir:
NSString *html = 0;
html = [http QuickGetStr: @"https://www.paypal.com/"];

//  After running this code, a "paypal_com.xml" file should appear
//  in /cookieDir.

//  It's content will look something like this:

//  <cookies>
//      <cookie key=".paypal.com,/" v="0" secure="yes">
//          <navcmd>_home-general</navcmd>
//          <HttpOnly />
//          <cwrClyrK4LoCV1fydGbAxiNL6iG>9cz...</cwrClyrK4LoCV1fydGbAxiNL6iG>
//      </cookie>
//  </cookies>

//  To cause cached cookies to be sent with 
//  subsequent HTTP requests, set the SendCookies
//  property = true.
http.SendCookies = YES;

//  If another HTTP request is sent, the cookies should
//  be added:
html = [http QuickGetStr: @"https://www.paypal.com/"];

//  Check the LastHeader property to see the MIME header
//  of the last HTTP request sent.
//  The "Cookie" header field should be present.
NSLog(@"%@",@"--- LastHeader ---");
NSLog(@"%@",http.LastHeader);