C
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 C Downloads
#include <C_CkHttp.h>
void ChilkatSample(void)
{
HCkHttp http;
const char *html;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttp_Create();
// 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:
CkHttp_putCookieDir(http,"/cookieDir");
CkHttp_putSaveCookies(http,TRUE);
// Any methods that do a GET, POST, etc. will save cookies
// to the CookieDir:
html = CkHttp_quickGetStr(http,"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.
CkHttp_putSendCookies(http,TRUE);
// If another HTTP request is sent, the cookies should
// be added:
html = CkHttp_quickGetStr(http,"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.
printf("--- LastHeader ---\n");
printf("%s\n",CkHttp_lastHeader(http));
CkHttp_Dispose(http);
}