Net-Xero

 view release on metacpan or  search on metacpan

lib/Net/Xero.pm  view on Meta::CPAN

        consumer_key     => $self->key,
        consumer_secret  => $self->secret,
        request_url      => $self->api_url . '/oauth/RequestToken',
        request_method   => 'POST',
        signature_method => 'RSA-SHA1',
        timestamp        => time,
        nonce            => $self->nonce,
        callback         => $self->callback_url,
    );

    my $private_key = Crypt::OpenSSL::RSA->new_private_key($self->cert);
    $request->sign($private_key);
    my $res = $self->ua->request(GET $request->to_url);

    if ($res->is_success) {
        my $response =
            Net::OAuth->response('request token')
            ->from_post_body($res->content);
        $self->request_token($response->token);
        $self->request_secret($response->token_secret);
        print STDERR "Got Request Token ", $response->token, "\n"
            if $self->debug;

lib/Net/Xero.pm  view on Meta::CPAN

        consumer_secret  => $self->secret,
        request_url      => $self->api_url . '/oauth/AccessToken',
        request_method   => 'POST',
        signature_method => 'RSA-SHA1',
        timestamp        => time,
        nonce            => $self->nonce,
        callback         => $self->callback_url,
        token            => $self->request_token,
        token_secret     => $self->request_secret,
    );
    my $private_key = Crypt::OpenSSL::RSA->new_private_key($self->cert);
    $request->sign($private_key);
    my $res = $self->ua->request(GET $request->to_url);

    if ($res->is_success) {
        my $response =
            Net::OAuth->response('access token')->from_post_body($res->content);
        $self->access_token($response->token);
        $self->access_secret($response->token_secret);
        print STDERR "Got Access Token ", $response->token, "\n"
            if $self->debug;
        print STDERR "Got Access Token Secret ", $response->token_secret, "\n"

lib/Net/Xero.pm  view on Meta::CPAN

    );

    my $content;
    if ($method =~ m/^(POST|PUT)$/) {
        $hash->{command} ||= $command;
        $content = $self->_template($hash);
        $opts{extra_params} = { xml => $content } if ($method eq 'POST');
    }

    my $request     = Net::OAuth->request("protected resource")->new(%opts);
    my $private_key = Crypt::OpenSSL::RSA->new_private_key($self->cert);
    $request->sign($private_key);
    #my $req = HTTP::Request->new($method, $request->to_url);
    my $req = HTTP::Request->new($method, $request_url);
    if ($hash and ($method eq 'POST')) {
        $req->content($request->to_post_body);
        $req->header('Content-Type' =>
                'application/x-www-form-urlencoded; charset=utf-8');
    }
    else {
        $req->content($content) if ($hash and ($method eq 'PUT'));
        $req->header(Authorization => $request->to_authorization_header);



( run in 0.710 second using v1.01-cache-2.11-cpan-a5abf4f5562 )