::Strava - Interface to the Strava API version 2
=cut
use Any::Moose;
use Any::URI::Escape;
use JSON;
use LWP::UserAgent;
use Data::Dumper;
has 'ride' => ( is => 'rw', isa => 'Int', required => 0 )
ON = 0.01;
our $Ua = LWP::UserAgent->new( agent => join( '_', __PACKAGE__, $VERSION ) );
our $Json = JSON->new->allow_nonref;
=head1 METHODS
=over 4
=item efforts
$s = WebService::Strava->new;
my $res = $Ua->get($url);
die "query for $url failed!" unless $res->is_success;
$res = $Json->decode( $res->content );
my @efforts;
# $DB::single = 1;
foreach my $effort ( @{ $re
strict;
use warnings;
use Config::Tiny;
use LWP::Authen::OAuth2;
use JSON qw(decode_json encode_json);
use JSON::Parse 'valid_json';
use Carp qw(croak);
use File::Basename;
use File::MimeInfo::Magic;
);
my $json = $response->decoded_content;
if (! valid_json($json) ) {
croak("Something went wrong, a JSON string wasn't returned");
}
if ($ENV{STRAVA_DEBUG}) {
say Dumper($json);
}
return decode_json($json);
}
method delete_api($api_path) {
my $response = $self->auth->delete($self->{api_base}.$api_path);
if ($ENV{STRAVA_DEBUG}) {
say Dumper($response);
}
return $r