20.15. Fetching Password-Protected Pages
20.15.1. Problem
You want to use
LWP to fetch web pages or submit forms, but the web server requires
authentication.
20.15.2. Solution
Set the username and password for a particular realm with the user
agent''s credentials
method:
$ua->credentials(''http://www.perlcabal.com/cabal_only/'',
''Secret Perl Cabal Files'',
''username'' => ''password'');
20.15.3. Discussion
To
access pages protected by basic authentication, a browser must supply
the username and password for the realm of the
authentication. The realm is just a string that identifies which
username and password the user must supply. The
credentials method tells the user agent to send
the username and password for a particular realm.A somewhat kludgey solution is to specify URLs with the username and
password in them:
http://user:password@www.example.com/private/pages/
This is kludgey because links within the returned document do not
have your username and password encoded in them. Solutions that rely
entirely on URL-encoded usernames and passwords often quickly
degenerate into code that wishes it had used
credentials to begin with.
20.15.4. See Also
The documentation for the CPAN module LWP::UserAgent