simple_uri 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0e3ee5c5c133d569f5c8be8cc70724a04489cd5a
4
- data.tar.gz: dcbbec601f3d7ecd7e1c9d6f91f0773bc475cc38
3
+ metadata.gz: 888a8ac42686f92a12609b7384f879f672b9f24f
4
+ data.tar.gz: 6b65ab65de184ae39cf4c3cd7e161050aedc4c0f
5
5
  SHA512:
6
- metadata.gz: 95077dbe369647d406610bf038897f327757efb882d47c3a44d7f147ac244751b98c7c696f557205439cdd7b010f78824154a146d932a08284ab3182059ca0ac
7
- data.tar.gz: c601778893aed7474595d9730adb778b00f1f74c6bcefe456eb7ec6340696d02f3b67643d3cc22a0dfde740cc656bd4176fb7d553695482f24b3d274dc081259
6
+ metadata.gz: 6360a9cca63d4327b0996fdf43801e4bd5f0f05646e7b58c0b64a3a7376987d50a5fa9bd186778bc4af835cac99b724e9b59cd6f36eb55108ddc23639d7cd4eb
7
+ data.tar.gz: bbbbdb9398120c52357b4df2847735fcee3c801417425455b5a998f6f1eafc814c3ac9bea3f5013da2d63eb4950b9c3e0d0a0f165b9e1d96337d646e499e2620
@@ -1,3 +1,3 @@
1
1
  module SimpleUri
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
data/lib/simple_uri.rb CHANGED
@@ -13,7 +13,7 @@ module SimpleUri
13
13
  #parameters:url-String, method-Symbol||String, params-String, user-String, password:String, debug-Boolean
14
14
  def connect(url: nil, method: nil, params: nil, user: nil, password: nil, debug: @@debug_mode)
15
15
  enable_debug_mode(debug)
16
- uri = URI.parse(URI.encode(url))
16
+ uri = URI.parse(URI.encode(prepare_url(url)))
17
17
  http = Net::HTTP.new(uri.host, uri.port)
18
18
  http.read_timeout = 1000
19
19
  debug_http(http)
@@ -30,7 +30,7 @@ module SimpleUri
30
30
  #parameters:url-String, method-Symbol||String, params-String, req_body-String, req_headers-Hash, user-String, password:String, debug-Boolean, cookies-Boolean
31
31
  def send_request(url: nil, method: nil, params: nil, req_body: nil, req_headers: nil, user: nil, password: nil, debug: @@debug_mode, cookies: false)
32
32
  req, http = connect(url: url, method: method, params: params, user: user, password: password, debug: debug)
33
- req.body = req_body
33
+ req.body = prepare_req_body(req_body)
34
34
  req_headers.each { |k, v| req[k] = v } if req_headers
35
35
  res = http.request(req)
36
36
  res.body
@@ -43,11 +43,23 @@ module SimpleUri
43
43
  cookies ? { body: res_body, cookies: res.response['set-cookie'] } : res_body
44
44
  end
45
45
 
46
- def body_to_str_params(body)
47
- body.map { |k, v| "#{k.to_s}=#{v.to_s}" }.join('&')
48
- end
49
-
50
46
  private
47
+
48
+ def prepare_req_body(body)
49
+ (body.is_a?(Hash))? body_to_str_params(body) : body
50
+ end
51
+
52
+ def body_to_str_params(body)
53
+ body.map { |k, v| "#{k.to_s}=#{v.to_s}" }.join('&')
54
+ end
55
+
56
+ def prepare_url(url)
57
+ unless url.match(/http(s)?:\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.\w{2,5}\/.+/) && url[-1]=='/'
58
+ url += '/'
59
+ debug_msg 'Append \'/\' to url.'
60
+ end
61
+ url
62
+ end
51
63
 
52
64
  def enable_debug_mode(enabled)
53
65
  if enabled
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_uri
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nikulin Aleksander
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-15 00:00:00.000000000 Z
11
+ date: 2014-10-16 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: To simplify working with url
14
14
  email: nikulinaleksandr@gmail.com