Cookies

Cookies mit Perl

Eigenschaften

Das Zustandslose Protokoll HTTP kennt keine Zustandsparameter. Es ist aber in bestimmten Fällen zweckmäßig, das Informationen eines Servers zu einer Sitzung dauerhaft (persistent) gemacht werden.
Die Informationen können dann bei einem erneuten Seitenaufruf von diesem Server ausgewertet werden.

Cookies werden vom Server an den Client geschickt. Es sind Name-Wert-Paare ( z.B. Konto=4711 ), diese werden in einem browserspezifischen Format gespeichert und sind meist mit einer Gültigkeitsdauer versehen. Wird eine Serverseite nochmal angewählt, dann wird der Cookie vom Client mitgesendet und kann vom Server ausgewertet werden.

Perl - Syntax
CGI - Script :
      1#!/usr/bin/perl
      2 use strict;
      3 use CGI qw(:standard); # liefert Funktion 'header'
      4 use CGI::Cookie;       # liefert Funktion 'cookie'
      5 #
      6 # Hier wird der Cookiewert, der vom Client
      7 # an den Server gesendet wird, entgegengenommen
      8 #
      9 my $cookie_value = cookie( -name => 'Count' );
     10 #
     11 # Hier wird der Cookiewert (z.B.) veraendert
     12 #
     13 my $new_value = $cookie_value + 1;
     14 #
     15 # Eine Cookieinstanz auf dem Server wird gebildet
     16 #
     17 my $cookie = new CGI::Cookie( -name   =>  'Count',
     18                       -value  =>  $new_value,
     19                       -expires=>  '+3m'
     20                      );
     21 # Der Server sendet den Cookie im Header
     22 print header( -cookie  => $cookie );
     23 print "<html><head><title>Mit Cookie</title></head><body>";
     24 print "<h1>Ist der Cookie da ?</h1>";
     25 print "<b>Ihr Konto : $konto</b>";
     26 print "</body></html>";