Provided by: libgeoip2-perl_2.006002-1_all bug

NAME

       GeoIP2::Error::WebService - An explicit error from the GeoIP2 web service

VERSION

       version 2.006002

SYNOPSIS

         use 5.008;

         use GeoIP2::WebService::Client;
         use Scalar::Util qw( blessed );
         use Try::Tiny;

         my $client = GeoIP2::WebService::Client->new(
             account_id  => 42,
             license_key => 'abcdef123456',
         );

         try {
             $client->insights( ip => '24.24.24.24' );
         }
         catch {
             die $_ unless blessed $_;
             if ( $_->isa('GeoIP2::Error::HTTP') ) {
                 log_web_service_error(
                     maxmind_code => $_->code(),
                     status       => $_->http_status(),
                     uri          => $_->uri(),
                 );
             }

             # handle other exceptions
         };

DESCRIPTION

       This class represents an error returned by MaxMind's GeoIP2 web service. It extends
       Throwable::Error and adds attributes of its own.

METHODS

       The "$error->message()", and "$error->stack_trace()" methods are inherited from
       Throwable::Error. The message will be the value provided by the MaxMind web service. See
       <http://dev.maxmind.com/geoip/geoip2/web-services> for details.

       It also provides three methods of its own:

   $error->code()
       Returns the code returned by the MaxMind GeoIP2 web service.

   $error->http_status()
       Returns the HTTP status. This should be either a 4xx or 5xx error.

   $error->uri()
       Returns the URI which gave the HTTP error.

SUPPORT

       Bugs may be submitted through <https://github.com/maxmind/GeoIP2-perl/issues>.

AUTHORS

       •   Dave Rolsky <drolsky@maxmind.com>

       •   Greg Oschwald <goschwald@maxmind.com>

       •   Mark Fowler <mfowler@maxmind.com>

       •   Olaf Alders <oalders@maxmind.com>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2013 - 2019 by MaxMind, Inc.

       This is free software; you can redistribute it and/or modify it under the same terms as
       the Perl 5 programming language system itself.