Sample code for 30+ languages & platforms
Dart

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 Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

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

  final http = CkHttp();

  // 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 = true;

  // Any methods that do a GET, POST, etc. will save cookies
  // to the CookieDir:
  var html = '';
  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 = true;

  // 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.
  print('--- LastHeader ---');
  print(http.lastHeader);
}