Circle-Common

 view release on metacpan or  search on metacpan

lib/Circle/Common.pm  view on Meta::CPAN

package Circle::Common;

use 5.006;
use strict;
use warnings;
use Exporter 'import';
use URL::Encode qw(url_encode_utf8);
use LWP::UserAgent;
use HTTP::Request;
use Slurp;
use Try::Tiny;
use YAML;
use JSON;
use Carp;
use File::Share ':all';

our @EXPORT_OK = qw(
  load_config
  build_url_template

lib/Circle/Common.pm  view on Meta::CPAN

    my $header;
    if ($need_session_key && $session_key) {
        $header = [
            'AuthorizationV2' => $session_key,
            'Content-Type'    => 'application/json; charset=UTF-8'
        ];
    }
    else {
        $header = [ 'Content-Type' => 'application/json; charset=UTF-8' ];
    }
    my $request  = HTTP::Request->new( 'POST', $url, $header, encode_json($data) );
    my $response = $ua->request($request);
    if ( $response->is_success ) {
        return decode_json( $response->decoded_content );
    }
    else {
        carp 'http_json_post' . $response->status_line ? $response->status_line : 'unknown';
        return {
            status  => $response->status_line,
            message => $response->decoded_content,
        };

lib/Circle/Common.pm  view on Meta::CPAN

    # print "need_session_key: $need_session_key, session_key: $session_key";
    if ($need_session_key && $session_key) {
        $header = [
            'AuthorizationV2' => $session_key,
            'Content-Type'    => 'application/json; charset=UTF-8'
        ];
    }
    else {
        $header = [ 'Content-Type' => 'application/json; charset=UTF-8' ];
    }
    my $request  = HTTP::Request->new( 'GET', $url, $header );
    my $response = $ua->request($request);
    if ( $response->is_success ) {
        return decode_json( $response->decoded_content );
    }
    else {
        carp 'http_json_get' . $response->status_line ? $response->status_line : 'unknown';
        return {
            status  => $response->status_line,
            message => $response->decoded_content,
        };



( run in 0.521 second using v1.01-cache-2.11-cpan-de7293f3b23 )