App-Aliyun
view release on metacpan or search on metacpan
},
"develop" : {
"requires" : {
"Dist::Milla" : "v1.0.17",
"Test::Pod" : "1.41"
}
},
"runtime" : {
"requires" : {
"Data::UUID" : "0",
"DateTime" : "0",
"Digest::SHA" : "0",
"Mojolicious" : "0",
"URI::Escape" : "0",
"perl" : "5.008005"
}
},
"test" : {
"requires" : {
"Test::More" : "0.96"
}
no_index:
directory:
- eg
- examples
- inc
- share
- t
- xt
requires:
Data::UUID: '0'
DateTime: '0'
Digest::SHA: '0'
Mojolicious: '0'
URI::Escape: '0'
perl: '5.008005'
resources:
bugtracker: https://github.com/fayland/perl-App-Aliyun/issues
homepage: https://github.com/fayland/perl-App-Aliyun
repository: https://github.com/fayland/perl-App-Aliyun.git
version: '0.02'
x_serialization_backend: 'YAML::Tiny version 1.70'
requires 'perl', '5.008005';
requires 'Mojolicious';
requires 'DateTime';
requires 'URI::Escape';
requires 'Digest::SHA';
requires 'Data::UUID';
on test => sub {
requires 'Test::More', '0.96';
};
lib/MojoX/Aliyun.pm view on Meta::CPAN
package MojoX::Aliyun;
use strict;
use warnings;
use v5.10;
use Carp qw/croak/;
use Mojo::Base -base;
use Mojo::UserAgent;
use DateTime;
use Digest::SHA qw(hmac_sha1_base64);
use URI::Escape;
use Data::UUID;
our $VERSION = '0.02';
has 'ua' => sub {
my $ua = Mojo::UserAgent->new;
$ua->transactor->name("MojoX-Aliyun $VERSION");
return $ua;
lib/MojoX/Aliyun.pm view on Meta::CPAN
my $uri = Mojo::URL->new($url);
my $path = $uri->path;
my $Version = '2014-05-26';
$Version = '2014-08-15' if $url =~ 'rds\.';
my $ug = Data::UUID->new;
my $uuid = $ug->to_string($ug->create());
my %auth_params = (
Timestamp => sprintf("%s", DateTime->now()),
Format => 'JSON',
Version => $Version,
SignatureMethod => 'HMAC-SHA1',
SignatureVersion => '1.0',
SignatureNonce => $uuid,
AccessKeyId => $self->access_key,
$self->region_id ? (RegionId => $self->region_id) : (),
$params ? %$params : (),
);
( run in 0.284 second using v1.01-cache-2.11-cpan-05444aca049 )