;
use HTTP::Request::Common;
use URI;
use LWP::UserAgent;
use Log::Log4perl qw(:easy);
use JSON qw( from_json );
use MIME::Base64;
use Moo;
our $VERSION = '0.07'; # VERSION
# ABSTRACT: OAuth2 for com
my $resp = $ua->request($req);
if( $resp->is_success() ) {
my $data =
from_json( $resp->content() );
DEBUG "Token refreshed, will expire in $data->{ expires_in } second
($req);
if( $resp->is_success() ) {
my $json = $resp->content();
DEBUG "Received: [$json]";
my $data = from_json( $json );
return ( $data->{ access_token },
data from the server:
use OAuth::Cmdline::Automatic;
use LWP::UserAgent;
use JSON qw( from_json );
my $oauth = OAuth::Cmdline::Automatic->new();
my $ua = LWP::UserAgent->new();
on_headers );
if( $resp->is_error ) {
die $resp->message;
}
my $data = from_json( $resp->decoded_content );
for my $device ( @{ $data->{ results } } ) {
printf "%s-v
SION
version 0.07
=head1 SYNOPSIS
my $oauth = OAuth::Cmdline::Smartthings->new( );
my $json =
$oauth->http_get( $oauth->base_uri . "/api/smartapps/endpoints" );
=head1 DESCRIPTION
use JSON qw( from_json );
my $oauth = OAuth::Cmdline::Smartthings->new;
my $json = $oauth->http_get(
$oauth->base_uri . "/api/smartapps/endpoints" );
if( !defined $json ) {
die "Can't get endpoints";
}
my $uri = from_json( $json )->[ 0 ]->{ uri } . "/switches";
my $data = $oauth->http_get( $uri );
print "$data\n";
will print something like
[