I should probably explain what my problem was, in the event anyone else should come searching. I was trying to get my Quickrep program to save its cookie it between uses of the program. I read the HTTP::Cookies and LWP::UserAgent docs again and again, and I was convinced I was just using the given functions wrong, despite the fact that my code looked perfectly correct. Well, it turned out that when my script logged in Perl Monks, it wasn't setting the form option that asks for a persistant cookie. A simple mistake, one that pjf pointed out to me. Otherwise, I'd probably be digging through the source to HTTP::Cookies by now, slowly going insane.
So for future reference, if you want to login to Perl Monks and save a persistant cookie, you have to pass a value (the actual form uses '+10y') for the 'expires' field. Example:
my $url = URI::URL->new( 'http://www.perlmonks.org/index.pl' );
$url->query_form(
op => 'login',
user => $username,
passwd => $password,
expires => '+10y'
);
my $request = HTTP::Request->new( GET => $url->as_string() );
my $response = $agent->request( $request );
"We're experiencing some Godzilla-related turbulence..." |