#!/usr/bin/perl use warnings; use strict; use LWP::Debug qw( + ); use WWW::Mechanize; use CGI; use MIME::Base64; use HTTP::Cookies; my $netloc = "10.4.4.4:8080"; my $url = "http://" . $netloc . "/admin"; my $realm = "Realm"; my $username = "user"; my $password = "pass"; my $cookie_jar = HTTP::Cookies->new( file => 'cookies.dat', autosave => 1, ); my $agent = WWW::Mechanize->new( autocheck => 1, quiet => 0, agent_alias => 'Mac Mozilla', cookie_jar => $cookie_jar, ); # Supply the necessary credentials $agent->credentials($netloc, $realm, $username, $password); $agent->get($url); # Throw error if page not found $agent->success() or die "Can't fetch the Requested page"; #### LWP::UserAgent::new: () LWP::UserAgent::request: () LWP::UserAgent::send_request: GET http://10.4.4.4:8080/admin LWP::Protocol::http::request: () LWP::UserAgent::request: Simple response: Unauthorized LWP::UserAgent::request: () HTTP::Cookies::add_cookie_header: Checking 10.4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4 for cookies LWP::UserAgent::send_request: GET http://10.4.4.4:8080/admin LWP::Protocol::http::request: () LWP::UserAgent::request: Simple response: Unauthorized LWP::UserAgent::request: () HTTP::Cookies::add_cookie_header: Checking 10.4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4 for cookies LWP::UserAgent::send_request: GET http://10.4.4.4:8080/admin LWP::Protocol::http::request: () LWP::UserAgent::request: Simple response: Unauthorized LWP::UserAgent::request: () HTTP::Cookies::add_cookie_header: Checking 10.4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4 for cookies LWP::UserAgent::send_request: GET http://10.4.4.4:8080/admin LWP::Protocol::http::request: () LWP::UserAgent::request: Simple response: Unauthorized LWP::UserAgent::request: () HTTP::Cookies::add_cookie_header: Checking 10.4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4 for cookies LWP::UserAgent::send_request: GET http://10.4.4.4:8080/admin LWP::Protocol::http::request: () Error GETing http://10.4.4.4:8080/admin: Unauthorized at /Library/Perl/5.8.8/LWP/Authen/Basic.pm line 56 #### #!/usr/bin/perl use warnings; use strict; use LWP::Debug qw( + ); use WWW::Mechanize; use CGI; use MIME::Base64; use HTTP::Cookies; my $netloc = "10.4.4.4:8080"; my $url = "http://" . $netloc . "/admin"; my $realm = "Realm"; my $username = "user"; my $password = "pass"; my @args = ( Authorization => "Basic " . MIME::Base64::encode( $username . ':' . $password ) ); my $cookie_jar = HTTP::Cookies->new( file => 'cookies.dat', autosave => 1, ); my $agent = WWW::Mechanize->new( autocheck => 1, quiet => 0, agent_alias => 'Mac Mozilla', cookie_jar => $cookie_jar, ); # Supply the necessary credentials $agent->credentials($netloc, $realm, $username, $password); $agent->get($url,@args); # Throw error if page not found $agent->success() or die "Can't fetch the Requested page"; #### LWP::UserAgent::new: () LWP::UserAgent::request: () HTTP::Cookies::add_cookie_header: Checking 10.4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4.4 for cookies HTTP::Cookies::add_cookie_header: Checking 4.4 for cookies HTTP::Cookies::add_cookie_header: Checking .4 for cookies LWP::UserAgent::send_request: GET http://10.4.4.4:8080/admin LWP::Protocol::http::request: () HTTP::Cookies::extract_cookies: Set cookie JSESSIONID => blahblahblah LWP::UserAgent::request: Simple response: OK WWW::Mechanize=HASH(0x9429e0)->status() WWW::Mechanize=HASH(0x9429e0)->content()