Sample code for 30+ languages & platforms
Pascal (Lazarus/Delphi)

Demonstrates how to Get Cookies Sent by the HTTP Server

See more HTTP Examples

This example demonstrates how to get the cookies that have been received from the HTTP server.

Chilkat Pascal (Lazarus/Delphi) Downloads

Pascal (Lazarus/Delphi)
program ChilkatDemo;

// Demonstrates using the Chilkat Pascal wrapper via the C bridge DLL.
// Builds as a console application under Lazarus (FPC) or Delphi.

{$IFDEF FPC}
  {$MODE DELPHI}
{$ENDIF}
{$APPTYPE CONSOLE}

uses
  {$IFDEF UNIX}
  cthreads,
  {$ENDIF}
  SysUtils,
  CkDllLoader,
  Chilkat.Http;

// ---------------------------------------------------------------------------

procedure RunDemo;
var
  http: THttp;
  html: string;
  xmlStr: string;

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

  http := THttp.Create;

  //  When the HTTP object's SaveCookies property is enabled, cookies received from the 
  //  server are saved either to the directory specified by CookieDir (where they are stored as XML files) 
  //  or in memory if "memory" is specified.

  http.SaveCookies := True;
  http.CookieDir := 'memory';

  //  Do a few GET's 
  html := http.QuickGetStr('https://google.com/');
  html := http.QuickGetStr('https://stripe.com/');

  //  Examine the cookies received from each domain.
  xmlStr := http.GetCookieXml('google.com');
  WriteLn(xmlStr);

  //  Sample output:

  //  <?xml version="1.0" encoding="utf-8"?>
  //  <cookies>
  //      <cookie key=".google.com,/,AEC" v="0" expire="Tue, 17-Feb-2026 11:32:20 GMT" secure="yes">
  //          <AEC>AVh_......</AEC>
  //      </cookie>
  //      <cookie key=".google.com,/,NID" v="0" expire="Fri, 20-Feb-2026 11:32:20 GMT">
  //          <NID>525=A57i.......</NID>
  //      </cookie>
  //  </cookies>

  xmlStr := http.GetCookieXml('stripe.com');
  WriteLn(xmlStr);

  //  Sample output:

  //  <?xml version="1.0" encoding="utf-8"?>
  //  <cookies>
  //      <cookie key="stripe.com,/,cid" v="0" maxAge="7776000" secure="yes">
  //          <cid>eba2891e-89e4-4aec-b9cf-e799d5b4b230</cid>
  //      </cookie>
  //  </cookies>


  http.Free;

end;

// ---------------------------------------------------------------------------

begin

  try
    RunDemo;
  except
    on E: Exception do
      WriteLn('Unhandled exception: ', E.ClassName, ': ', E.Message);
  end;

  WriteLn;
  {$IFDEF MSWINDOWS}
  WriteLn('Press Enter to exit...');
  ReadLn;
  {$ENDIF}
end.