ucloud_ruby_sdk 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 64b6ec466d2233795131a0209ad5efcd719ecaf2
4
+ data.tar.gz: 2dd6a28976e74cfc6062d14b0f94c12c968032a2
5
+ SHA512:
6
+ metadata.gz: 3ddaa3d33603c2f2f42d5ba1123ee23be06d844b9b7135f93d5d255feb117f33971f90ef10e1d3ee769bd3f95318d4bf63c5a832933ac36a18b5c3540fec99ab
7
+ data.tar.gz: 354122eb912202e9bff3d102c070f261d68bbf324baaaf23f545755608337a8d82b2de13392961420c31c33a519214644131f15accf59e0f0c4e5be98131a571
@@ -0,0 +1,24 @@
1
+ require 'net/http'
2
+ require 'digest/sha1'
3
+ require 'json'
4
+
5
+ module UCloud
6
+ SERVER_URI = 'http://api.spark.ucloud.cn'
7
+
8
+ class Client
9
+ def initialize(public_key, private_key)
10
+ @public_key, @private_key = public_key, private_key
11
+ @uri = URI(UCloud::SERVER_URI)
12
+ end
13
+
14
+ def execute(action, params)
15
+ res = Net::HTTP.post_form(@uri, sign(params.merge!(Action: action, PublicKey: @public_key)))
16
+ JSON.parse(res.body)
17
+ end
18
+
19
+ private
20
+ def sign(params)
21
+ params.merge!(Signature: Digest::SHA1.hexdigest(params.sort.flatten.join + @private_key))
22
+ end
23
+ end
24
+ end
@@ -0,0 +1 @@
1
+ require 'ucloud/client'
metadata ADDED
@@ -0,0 +1,45 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ucloud_ruby_sdk
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - quake wang
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-03-16 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: ucloud ruby sdk
14
+ email: quake@chanyouji.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/ucloud/client.rb
20
+ - lib/ucloud_ruby_sdk.rb
21
+ homepage: http://rubygems.org/gems/ucloud_ruby_sdk
22
+ licenses:
23
+ - MIT
24
+ metadata: {}
25
+ post_install_message:
26
+ rdoc_options: []
27
+ require_paths:
28
+ - lib
29
+ required_ruby_version: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubyforge_project:
41
+ rubygems_version: 2.4.5
42
+ signing_key:
43
+ specification_version: 4
44
+ summary: ucloud ruby sdk
45
+ test_files: []