cloudflare protection is blocking the website connectivity in mojo::user-agent - perl

I just want to validate the website link whether it is connecting or not. I added the website also in the code. Please show some light on this.

Here is my code:

use Mojo::UserAgent;
my $ua  = Mojo::UserAgent->new;
my $timeout = $ua->request_timeout;
$ua = $ua->request_timeout(10);
my $res = $ua->get('https://www.aba.com')->result;

if    ($res->is_success)  { print 'Success' }
elsif ($res->is_error)    { print 'Failed ' . $res->message }
elsif ($res->code == 301) { print 'Redirect Success ' . $res->headers->location }
else                      { print 'Manual Check Required URL...' }

The above code is giving the following failed message:

Failed Service Temporarily Unavailable

Upvotes: 2

Views: 91

Answers (1)

Anyhow, I resolved the failed issue, it may be useful to someone else:

use Mojo::Promise;
use Mojo::UserAgent;

my @urls = ('https://www.aba.com');

my $ua = Mojo::UserAgent->new;
my $res;
my @gets = map {
    my $url = $_;
    $res = $ua->get_p( $url )->then(
        sub { print "Success -- valid -- $url" },
        sub { print "Failed -- $url" },
        );
    } @urls;

Mojo::Promise->all( @gets )->wait;

The result is:

Success -- valid -- https://www.aba.com

Upvotes: 1

Related Questions