Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Acme::HTTP(3)	      User Contributed Perl Documentation	 Acme::HTTP(3)

NAME
       Acme::HTTP - High-level access to Net::HTTP::NB and Net::HTTPS::NB

SYNOPSIS
	   use Acme::HTTP;

	   # you can use http:
	   my $url = "http://perldoc.perl.org/perlfaq5.html";

	   # ...or, alternatively, use https:
	   #  $url = "https://metacpan.org/pod/Data::Dumper";

	   set_redir_max(3); # Max. number of redirections
	   set_timeout(10);  # Timeout in seconds

	   my $obj = Acme::HTTP->new($url) || die $@;

	   my $code = get_code();
	   my $msg  = get_message();

	   if ($code eq	'404') {
	       die "Page '$url'	not found";
	   }
	   elsif ($code	ne '200') {
	       die "Page '$url'	- Error	$code, Msg '$msg'";
	   }

	   print "Orig url     = ", $url, "\n";
	   print "Real url     = ", get_url_act(), "\n";
	   print "Redirections = ", get_redir_act(), "\n";
	   print "Length       = ", get_response()->{'Content-Length'} // 0, "\n";
	   print "\n";

	   while (1) {
	       my $n = $obj->read_entity_body(my $buf, 4096);
	       die "read failed: $@" unless defined $n;
	       last unless $n;

	       print $buf;
	   }

PARAMETERS
       The following parameters	can be set in advance:

       set_redir_max($count)
	   Set the maximum number of redirections

       set_timeout($sec)
	   Set the timout in seconds

RETURN VALUES
       The following variables are available read-only after new():

       get_url_act()
	   returns the actual url after	redirection

       get_redir_act()
	   returns the actual number of	redirection that have taken place

       get_code()
	   returns the HTTP status

       get_message()
	   returns the HTTP message

       get_response()
	   returns a hash-reference of the response variables

   List	of values
       In case of a successful new(), the subroutines get_code() and
       get_message() are usually set as	follows:

	 get_code()    => '200'
	 get_message() => 'OK'

       However,	a non-existing address would typically return different
       values:

	 get_code()    => '404'
	 get_message() => 'Not Found'

       Here is one sample result of get_response() of an MP3 file:

	 'Content-Type'	  => 'audio/mpeg'
	 'Content-Length' => '28707232'
	 'Date'		  => 'Sun, 17 Aug 2014 10:53:43	GMT'
	 'Last-Modified'  => 'Thu, 10 Jul 2014 04:52:52	GMT'
	 'Accept-Ranges'  => 'bytes'
	 'Connection'	  => 'close'

	 'Cache-Control'  => 'max-age=2269915'
	 'ETag'		  => '"1404967972"'
	 'X-HW'		  => '1408272823.dop...pa1.c'

       ...and here is another example result of	get_esponse() of a web page:

	 'Content-Type'	  => 'text/html; charset=utf-8'
	 'Content-Length' => '31569'
	 'Date'		  => 'Sun, 17 Aug 2014 11:02:54	GMT'
	 'Last-Modified'  => 'Thu, 24 Jul 2014 03:31:45	GMT'
	 'Accept-Ranges'  => 'bytes'
	 'Connection'	  => 'close'

	 'Age'		  => '0'
	 'Set-Cookie'	  => '...expires=12-Sep-2031...; secure',
	 'Server'	  => 'nginx/0.7.67',
	 'Vary'		  => 'Accept-Encoding,Cookie'
	 'Via'		  => '1.1 varnish',
	 'X-Cache'	  => 'MISS, MISS',
	 'X-Cache-Hits'	  => '0, 0',
	 'X-Runtime'	  => '0.479137'
	 'X-Served-By'	  => 'cache-lo80-LHR, cache-fra1222-FRA',

AUTHOR
       Klaus Eichner <klaus03@gmail.com>

COPYRIGHT AND LICENSE
       Copyright (C) 2014 by Klaus Eichner

       All rights reserved. This program is free software; you can
       redistribute it and/or modify it	under the terms	of the artistic
       license 2.0, see
       http://www.opensource.org/licenses/artistic-license-2.0.php

perl v5.32.1			  2014-12-28			 Acme::HTTP(3)

NAME | SYNOPSIS | PARAMETERS | RETURN VALUES | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Acme::HTTP&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help