ezapi 1.0.1 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: e34e3c3e2fafae52890667e88a883341fcf218f9
4
- data.tar.gz: bd3dda30555624c83b5e4c994303741efa0541d4
2
+ SHA256:
3
+ metadata.gz: 05ba47d1405d629fb02a9842ccab88aa20112cb84af1d40b4c6a5f55b1acc1a9
4
+ data.tar.gz: 3900735b21d85fc55a1d0643efdcbe28d77bf2df2ac8c8f67f82fd1cfbeaa8e8
5
5
  SHA512:
6
- metadata.gz: 47c6829dfc258b8ebabdb445e3f17588eaa7ad9a6e6140ffc62104a1889aa743ace5e1f245ea350671f027357c6f0bfcd049a3cd62b0467346a3592dceabafe8
7
- data.tar.gz: bb976ef8a9a188ec4a189c2be7a18a60024bbdb0d00272b63775863156ed626668737e5c9d9d8460831fa0f3c867d53a5603f62dbea177d816edf2bc67dfea50
6
+ metadata.gz: a7c7895696125b85f542293aec317b4f36c916d4bf72894dabae73ed58cc652f414324ed7f012bb6e180e513bab498a29d72c8777ded9837b9cac94b2bc9b017
7
+ data.tar.gz: ebe667a053fe4f5c6ba1b34d479c8da3d07311602a36299f38aea1187a1ca3eb58d32626f2b0e38c20bf582efe40ba54e49e4eea0213946a676981f4a972f95a
@@ -30,9 +30,10 @@ Gem::Specification.new do |spec|
30
30
  spec.require_paths = ["lib"]
31
31
 
32
32
  spec.add_dependency 'rest-client', '~> 2.0'
33
- spec.add_dependency 'activesupport', '~> 4.2'
34
- spec.add_development_dependency "bundler", '~> 2.0', '>= 2.0.1'
35
- spec.add_development_dependency 'rake', '~> 13.0'
33
+ spec.add_dependency 'activesupport', '>= 4.2'
34
+ spec.add_dependency 'nokogiri', '~> 1.6', '>= 1.6.8'
35
+ spec.add_development_dependency 'bundler', '~> 2.0', '>= 2.0.1'
36
+ spec.add_development_dependency "rake", ">= 12.3.3"
36
37
  spec.add_development_dependency "rspec", "~> 3.0"
37
38
  spec.add_development_dependency "pry", "~> 0.10.4"
38
39
  end
@@ -2,6 +2,7 @@ require 'rest-client'
2
2
  require 'json'
3
3
  require 'base64'
4
4
  require 'uri'
5
+ require 'nokogiri'
5
6
 
6
7
  module EZApi
7
8
  module Client
@@ -24,13 +25,24 @@ module EZApi
24
25
  end
25
26
 
26
27
  def request(full_url, method, params={}, headers=self.request_headers, request_arguments={})
27
- default_request = {method: method, url: full_url, payload: params.to_json, headers: headers}
28
+ response = raw_request(full_url, method, params, headers, request_arguments)
28
29
 
29
30
  begin
30
- response = RestClient::Request.execute(default_request.merge(request_arguments))
31
- JSON.parse(response) unless response.empty?
31
+ if response.headers && response.headers[:content_type] == "application/xml"
32
+ Nokogiri::XML(response.body)
33
+ else
34
+ JSON.parse(response.body) unless response.empty?
35
+ end
32
36
  rescue JSON::ParserError => e
33
37
  nil
38
+ end
39
+ end
40
+
41
+ def raw_request(full_url, method, params={}, headers=self.request_headers, request_arguments={})
42
+ params = params.is_a?(Hash) ? params.to_json : params
43
+ default_request = {method: method, url: full_url, payload: params, headers: headers}
44
+ begin
45
+ RestClient::Request.execute(default_request.merge(request_arguments))
34
46
  rescue RestClient::ExceptionWithResponse => e
35
47
  if response_code = e.http_code and response_body = e.http_body
36
48
  handle_api_error(response_code, response_body)
@@ -1,3 +1,3 @@
1
1
  module EZApi
2
- VERSION = "1.0.1"
2
+ VERSION = "1.0.6"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ezapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nicholas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-08-27 00:00:00.000000000 Z
11
+ date: 2020-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -28,16 +28,36 @@ dependencies:
28
28
  name: activesupport
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '4.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '4.2'
41
+ - !ruby/object:Gem::Dependency
42
+ name: nokogiri
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.6'
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 1.6.8
51
+ type: :runtime
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: '1.6'
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 1.6.8
41
61
  - !ruby/object:Gem::Dependency
42
62
  name: bundler
43
63
  requirement: !ruby/object:Gem::Requirement
@@ -62,16 +82,16 @@ dependencies:
62
82
  name: rake
63
83
  requirement: !ruby/object:Gem::Requirement
64
84
  requirements:
65
- - - "~>"
85
+ - - ">="
66
86
  - !ruby/object:Gem::Version
67
- version: '13.0'
87
+ version: 12.3.3
68
88
  type: :development
69
89
  prerelease: false
70
90
  version_requirements: !ruby/object:Gem::Requirement
71
91
  requirements:
72
- - - "~>"
92
+ - - ">="
73
93
  - !ruby/object:Gem::Version
74
- version: '13.0'
94
+ version: 12.3.3
75
95
  - !ruby/object:Gem::Dependency
76
96
  name: rspec
77
97
  requirement: !ruby/object:Gem::Requirement
@@ -145,8 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
145
165
  - !ruby/object:Gem::Version
146
166
  version: '0'
147
167
  requirements: []
148
- rubyforge_project:
149
- rubygems_version: 2.6.14
168
+ rubygems_version: 3.0.6
150
169
  signing_key:
151
170
  specification_version: 4
152
171
  summary: Easily Communicate with APIs