Sample code for 30+ languages & platforms
Xbase++

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 Xbase++ Downloads

Xbase++
LOCAL oHttp
LOCAL cHtml

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

oHttp := CreateObject("Chilkat.Http")

//  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:
oHttp:CookieDir := "/cookieDir"
oHttp:SaveCookies := 1

//  Any methods that do a GET, POST, etc. will save cookies
//  to the CookieDir:

cHtml := oHttp: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 = 1.
oHttp:SendCookies := 1

//  If another HTTP request is sent, the cookies should
//  be added:
cHtml := oHttp: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.
? "--- LastHeader ---"
? oHttp:LastHeader

oHttp:destroy()