pl: Perl & LWP::UserAgent & Cookie setzen

Beitrag lesen

In Perl sind Instanzen von Klassen Referenzen. Beispiel zum aktuellen Thema:

package Cookie;

sub new{
    my $class = shift;
    return bless{}, $class;    
}

package HTTP;

sub new{
    my $class = shift;
    my $cookie = shift; # Objekt
    return bless{COOKIE => $cookie}, $class;
}

sub request{
    my $self = shift;
    $self->{COOKIE}{text} = "Huch, hab mir einen Cookie eingefangen";
}

package main;

my $cookie = Cookie->new;
my $http = HTTP->new($cookie);

$http->request;

print Dumper $cookie;
Ausgabe des Dump:
$VAR1 = bless( {
                 'text' => \'Huch, hab mir einen Cookie eingefangen'
               }, 'Cookie' );

Daten also außen zugänglich. q.e.d.