net-http-middleware 0.1.0 → 0.2.0
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 +4 -4
- data/README.md +10 -4
- data/lib/net/http/middleware.rb +1 -1
- data/lib/net/http/middleware/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7895642e0d48e927c411d3562e2ab0fbe98c79f1
|
4
|
+
data.tar.gz: 30a5b23c3c2633bf747a0e905f65af7ed588afbc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da6cdc8cf335bbe75bfe8ed1f4593e41dddc920ea345f4a2a4e0056e9ce2a9623c7239d9cce07b60f3c8947c94e0bd7bc900aa5558ba48bbca12840d7f3a567a
|
7
|
+
data.tar.gz: 9dbf4320b9aadc8d5248e22f468daac58ac1062a66da436967447f7ce3816925c291507343337118877be299d5ca3a05465cfbd32a1be3a7d27c4ae45628bf4c
|
data/README.md
CHANGED
@@ -4,6 +4,11 @@ Middlewares for Net::HTTP request method.
|
|
4
4
|
|
5
5
|
## Usage
|
6
6
|
|
7
|
+
There are couple of requirements for middleware to be implemented
|
8
|
+
1. Chain as a first argument for initializer of your middleware
|
9
|
+
2. 2 params for call: Request-object and body to be passed to call
|
10
|
+
3. Return the result of @chain.call(req, body)
|
11
|
+
|
7
12
|
```ruby
|
8
13
|
# Example of tracer, which will add header to each outgoing request
|
9
14
|
class OpenTraceId
|
@@ -11,9 +16,9 @@ class OpenTraceId
|
|
11
16
|
@chain = chain
|
12
17
|
end
|
13
18
|
|
14
|
-
def call(req, body = nil
|
19
|
+
def call(req, body = nil)
|
15
20
|
request.add_field('X-Custom-CrossService-RequestId', SecureRandom.uuid)
|
16
|
-
@chain.call(req, body
|
21
|
+
@chain.call(req, body)
|
17
22
|
end
|
18
23
|
end
|
19
24
|
|
@@ -24,14 +29,15 @@ class LogRequest
|
|
24
29
|
@logger = logger
|
25
30
|
end
|
26
31
|
|
27
|
-
def call(req, body = nil
|
32
|
+
def call(req, body = nil)
|
28
33
|
@logger.info('We log before')
|
29
|
-
response = @chain.call(req, body
|
34
|
+
response = @chain.call(req, body)
|
30
35
|
@logger.info('We log after')
|
31
36
|
response
|
32
37
|
end
|
33
38
|
end
|
34
39
|
|
40
|
+
require 'net/http/middleware'
|
35
41
|
# Adding middlewares to configurator
|
36
42
|
Net::HTTP.configure_middleware do |chain|
|
37
43
|
chain.use LogRequest, Logger.new(STDOUT)
|
data/lib/net/http/middleware.rb
CHANGED
@@ -15,7 +15,7 @@ module Net
|
|
15
15
|
alias_method(:orig_request, :request) unless method_defined?(:orig_request)
|
16
16
|
|
17
17
|
def request(req, body = nil, &block)
|
18
|
-
Net::HTTP.middleware_chain.call(req, body
|
18
|
+
Net::HTTP.middleware_chain.call(req, body) do
|
19
19
|
orig_request(req, body, &block)
|
20
20
|
end
|
21
21
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: net-http-middleware
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Shamatov
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-08-
|
11
|
+
date: 2017-08-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|