Sample code for 30+ languages & platforms
Dart

Adding Cookies to an HTTP Request

See more HTTP Examples

Demonstrates how to add one or more cookies to an HTTP request.

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();

  // The Cookie header field has this format:
  // Cookie: name1=value1 [; name2=value2] ...

  // Build an HTTP POST request:
  final req = CkHttpRequest();
  req.setFromUrl('http://www.chilkatsoft.com/echoPost.asp');
  req.httpVerb = 'POST';

  req.addParam('param1', 'value1');
  req.addParam('param2', 'value2');

  // To add cookies to any HTTP request sent by a Chilkat HTTP method
  // that uses an HTTP request object, add the cookies to the
  // request object by calling AddHeader.  

  // Add two cookies:
  req.addHeader('Cookie', 'user="mary"; city="Chicago"');

  // Send the HTTP POST.  
  // (The cookies are sent as part of the HTTP header.)

  final domain = 'www.chilkatsoft.com';
  final port = 80;
  final ssl = false;
  final resp = CkHttpResponse();
  try {
    http.httpSReq(domain, port, ssl, req, resp);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Display the HTML body of the response.
  if (resp.statusCode == 200) {
    // Show the last HTTP request header sent, which should include
    // our cookies...
    print(http.lastHeader);
  } else {
    print('HTTP Response Status = ${resp.statusCode}');
  }

  print('---------------------');

  // Some Chilkat HTTP methods do not use an HTTP request object. 
  // For these methods, such as for QuickGetStr, cookies (or any HTTP request header) 
  // are added by calling SetRequestHeader.  
  http.setRequestHeader('Cookie', 'user="mary"; city="Chicago"');

  try {
    final html = http.quickGetStr('http://www.w3.org/');
    // Show the last HTTP request header sent, which should include
    // our cookies...
    print(http.lastHeader);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
  }
}