Rajesh Dorairajan wrote:
> I ran into peculiar problem using LWP::UserAgent. I receive a 501 - Not
> yet implemented error when I connect to a web-server using the User-Agent.
> This happens when I pass in the Hostname and Portnumber as parameters in
> my function. However, if I hard-code the Server-name and port number it
> seems to work fine. I've included the piece of causing the problem below.
> Does anyone have suggestion why this is happening?
>
>
> my ( $Host, $Port ) = @_;
> my $url = "$Host:$Port"; #Does not work
> #my $url = "http://servername:80" #This works
>
> require LWP::UserAgent;
> my $ua = LWP::UserAgent->new(env_proxy => 0,
> keep_alive => 0,
> timeout => 30,
> );
>
> $response = $ua->get( $url );
>
are you sure you construct the right path? for example:
#!/usr/bin/perl -w
use strict;
use LWP::UserAgent;
sub print_page{
my($host,$port) = @_;
my $url = $host;
$url .= ":$port" if($port);
my $ua = LWP::UserAgent->new(env_proxy => 0,
keep_alive => 0,
timeout => 30);
my $r = $ua->request(HTTP::Request->new(GET => $url));
print $r->content if($r->is_success);
print $r->code,': ',$r->status_line unless($r->is_success);
print "\n";
}
print_page('http://google.com'); #-- works fine
print_page('http://google.com',80); #-- works fine
print_page('google.com'); #-- 400: URL must be absolute
print_page('google.com',80); #-- 501: Protocol not supported
__END__
you are most likely seeing the last one. make sure you specify the protocol.
david
--
$_=q,015001450154015401570040016701570162015401440041,,*,=*|=*_,split+local$";
map{~$_&1&&{$,<<=1,[EMAIL PROTECTED]||3])=>~}}0..s~.~~g-1;*_=*#,
goto=>print+eval
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]