|
NAMEAcme::HTTP - High-level access to Net::HTTP::NB and Net::HTTPS::NBSYNOPSISuse 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; } PARAMETERSThe following parameters can be set in advance:
RETURN VALUESThe following variables are available read-only after new():
List of valuesIn 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', AUTHORKlaus Eichner <klaus03@gmail.com>COPYRIGHT AND LICENSECopyright (C) 2014 by Klaus EichnerAll 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
Visit the GSP FreeBSD Man Page Interface. |