Class: Proxy::Dynflow::Callback::Core
- Inherits:
-
HttpRequest::ForemanRequest
- Object
- HttpRequest::ForemanRequest
- Proxy::Dynflow::Callback::Core
- Defined in:
- lib/smart_proxy_dynflow/callback.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.relay(request, from, to) ⇒ Object
27 28 29 |
# File 'lib/smart_proxy_dynflow/callback.rb', line 27 def self.relay(request, from, to) self.new.relay request, from, to end |
Instance Method Details
#relay(request, from, to) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/smart_proxy_dynflow/callback.rb', line 11 def relay(request, from, to) path = request.path.gsub(from, to) Proxy::LogBuffer::Decorator.instance.debug "Proxy request from #{request.host_with_port}#{request.path} to #{uri.to_s}#{path}" req = case request.env['REQUEST_METHOD'] when 'GET' request_factory.create_get path, request.env['rack.request.query_hash'] when 'POST' request_factory.create_post path, request.body.read end req['X-Forwarded-For'] = request.env['HTTP_HOST'] req['AUTHORIZATION'] = request.env['HTTP_AUTHORIZATION'] response = send_request req Proxy::LogBuffer::Decorator.instance.debug "Proxy request status #{response.code} - #{response}" response end |
#uri ⇒ Object
7 8 9 |
# File 'lib/smart_proxy_dynflow/callback.rb', line 7 def uri @uri ||= URI.parse Proxy::Dynflow::Plugin.settings.core_url end |