watchdocs-rails 0.1.4 → 0.2.0

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
2
  SHA1:
3
- metadata.gz: af1de1864e1b91549f1070d3afaeb7a44e2aaf07
4
- data.tar.gz: a5fd418998d23778f14f2a2c58a879932b65ecae
3
+ metadata.gz: 1d4ce6cd6e1a40a6fd07f03b15182856b0cd506f
4
+ data.tar.gz: 9a138b39de57b4c8af88dfa30fd07eb0e310cf4f
5
5
  SHA512:
6
- metadata.gz: 80f33dc98a5c02a31a013b4be6da55e115984cd20e4efd9ef2c964497ee873146af06b03ac09d25c7afc0204c27677dba388497e0a200db551f43c3864077ffa
7
- data.tar.gz: 12d443edea20cd9e2ec663ce26d568ee93b3d09665532dc86a2d4c176ff183ac745f0af140f644bdb88786bdc80d51c5ee9ca92c1881b6d0c58361132964c1eb
6
+ metadata.gz: 3677a73a2f29bf78d007620a6abb8115a4cb8dfb7943de3935530cffc53cbff3fb0e8714142b5e30a8221edd848923219bafa09319121480777328400026aadd
7
+ data.tar.gz: 274be20d49c111a90fce4ad19da7eed5447e85942eec912ba85dfe7249d34b7acb5d726958f17d33c3d49a7444c70aae476870ea2a9a636bdeed9c25a7165a6d
@@ -35,8 +35,8 @@ module Watchdocs
35
35
  @report[:request] = {
36
36
  method: env['REQUEST_METHOD'],
37
37
  url: env['PATH_INFO'],
38
- query_string_params: CGI.parse(env['QUERY_STRING']),
39
- body: parse_body(env['rack.input'].read),
38
+ query_string_params: Rack::Utils.parse_nested_query(env['QUERY_STRING']),
39
+ body: parse_request_body(env['rack.input'].read),
40
40
  headers: request_headers(env)
41
41
  }
42
42
  end
@@ -46,7 +46,7 @@ module Watchdocs
46
46
  @report[:response] = {
47
47
  status: status,
48
48
  headers: headers.to_hash.upcased_keys,
49
- body: parse_body(body_string(body))
49
+ body: parse_response_body(body_string(body))
50
50
  }
51
51
  end
52
52
 
@@ -82,12 +82,24 @@ module Watchdocs
82
82
  body_string
83
83
  end
84
84
 
85
- def parse_body(body)
85
+ def parse_response_body(body)
86
86
  return if body.empty?
87
87
  JSON.parse(body).filter_data
88
88
  rescue JSON::ParserError
89
89
  'Invalid JSON'
90
90
  end
91
+
92
+ def parse_request_body(body)
93
+ return if body.empty?
94
+ JSON.parse(body).filter_data
95
+ rescue JSON::ParserError
96
+ begin
97
+ Rack::Utils.parse_nested_query(body)
98
+ .filter_data
99
+ rescue StandardError
100
+ 'Request body format not supported'
101
+ end
102
+ end
91
103
  end
92
104
  end
93
105
  end
@@ -1,5 +1,5 @@
1
1
  module Watchdocs
2
2
  module Rails
3
- VERSION = "0.1.4"
3
+ VERSION = "0.2.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: watchdocs-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - mazikwyry