HTTP-Simple
view release on metacpan or search on metacpan
NAME
HTTP::Simple - Simple procedural interface to HTTP::Tiny
SYNOPSIS
perl -MHTTP::Simple -e'getprint(shift)' 'https://example.com'
use HTTP::Simple;
my $content = get 'https://example.com';
if (mirror('https://example.com', '/path/to/file.html') == 304) { ... }
if (is_success(getprint 'https://example.com')) { ... }
postform('https://example.com', {foo => ['bar', 'baz']});
postjson('https://example.com', [{bar => 'baz'}]);
postfile('https://example.com', '/path/to/file.png');
DESCRIPTION
This module is a wrapper of HTTP::Tiny that provides simplified
functions for performing HTTP requests in a similar manner to
LWP::Simple, but with slightly more useful error handling. For full
control of the request process and response handling, use HTTP::Tiny
directly.
IO::Socket::SSL is required for HTTPS requests with HTTP::Tiny.
Request methods that return the body content of the response will
return a byte string suitable for directly printing, but that may need
to be decoded for text operations.
The HTTP::Tiny object used by these functions to make requests can be
accessed as $HTTP::Simple::UA (for example, to configure the timeout,
or replace it with a compatible object like HTTP::Tinyish).
The JSON encoder used by the JSON functions can be accessed as
$HTTP::Simple::JSON, and defaults to a Cpanel::JSON::XS object if
Cpanel::JSON::XS 4.11+ is installed, and otherwise a JSON::PP object.
If replaced with a new object, it should have UTF-8 encoding/decoding
enabled (usually the utf8 option). If it is set to a string, it will be
used as a module name that is expected to have decode_json and
encode_json functions.
FUNCTIONS
All functions are exported by default. Functions can also be requested
individually or with the tags :request, :status, or :all.
get
my $contents = get($url);
Retrieves the document at the given URL with a GET request and returns
it as a byte string. Throws an exception on connection or HTTP errors.
getjson
my $data = getjson($url);
Retrieves the JSON document at the given URL with a GET request and
decodes it from JSON to a Perl structure. Throws an exception on
connection, HTTP, or JSON errors.
head
my $headers = head($url);
Retrieves the headers at the given URL with a HEAD request and returns
them as a hash reference. Header field names are normalized to lower
case, and values may be an array reference if the header is repeated.
Throws an exception on connection or HTTP errors.
getprint
my $status = getprint($url);
Retrieves the document at the given URL with a GET request and prints
it as it is received. Returns the HTTP status code. Throws an exception
on connection errors.
getstore
my $status = getstore($url, $path);
Retrieves the document at the given URL with a GET request and stores
it to the given file path. Returns the HTTP status code. Throws an
( run in 0.716 second using v1.01-cache-2.11-cpan-140bd7fdf52 )