Class: Alice::Adapter::NetHttp
- Inherits:
-
Middleware
- Object
- Middleware
- Alice::Adapter::NetHttp
- Defined in:
- lib/alice/adapter/net_http.rb
Instance Method Summary collapse
Methods inherited from Middleware
#create_form_params, #full_path_for, #initialize, loaded?, #process_body_for_request, setup_parallel_manager
Constructor Details
This class inherits a constructor from Alice::Middleware
Instance Method Details
#call(env) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/alice/adapter/net_http.rb', line 5 def call(env) process_body_for_request(env) http = Net::HTTP.new(env[:url].host, env[:url].port) full_path = full_path_for(env[:url].path, env[:url].query, env[:url].fragment) http_resp = http.send_request(env[:method].to_s.upcase, full_path, env[:body], env[:request_headers]) resp_headers = {} http_resp.each_header do |key, value| resp_headers[key] = value end env.update \ :status => http_resp.code.to_i, :response_headers => resp_headers, :body => http_resp.body @app.call env rescue Errno::ECONNREFUSED raise Error::ConnectionFailed, "connection refused" end |