class Frails::DevServerProxy

Public Instance Methods

perform_request(env) click to toggle source
Calls superclass method
# File lib/frails/dev_server_proxy.rb, line 12
def perform_request(env)
  if env['PATH_INFO'].start_with?(public_output_path) && Frails.dev_server.running?
    host = Frails.dev_server.host_with_port
    env['HTTP_HOST'] = env['HTTP_X_FORWARDED_HOST'] = env['HTTP_X_FORWARDED_SERVER'] = host
    env['HTTP_X_FORWARDED_PROTO'] = env['HTTP_X_FORWARDED_SCHEME'] = 'http'
    env['SCRIPT_NAME'] = ''

    super(env)
  else
    @app.call(env)
  end
end
rewrite_response(response) click to toggle source
# File lib/frails/dev_server_proxy.rb, line 6
def rewrite_response(response)
  _status, headers, _body = response
  headers.delete 'transfer-encoding'
  response
end

Private Instance Methods

public_output_path() click to toggle source
# File lib/frails/dev_server_proxy.rb, line 27
def public_output_path
  "/#{Frails.public_output_path}"
end