Class: RubstApi::Middleware::HTTPSRedirectMiddleware

Inherits:
Object
  • Object
show all
Defined in:
lib/rubst_api/middleware.rb

Instance Method Summary collapse

Constructor Details

#initialize(app) ⇒ HTTPSRedirectMiddleware

Returns a new instance of HTTPSRedirectMiddleware.



68
# File 'lib/rubst_api/middleware.rb', line 68

def initialize(app) = @app = app

Instance Method Details

#call(env) ⇒ Object



69
70
71
72
73
# File 'lib/rubst_api/middleware.rb', line 69

def call(env)
  return @app.call(env) if env["rack.url_scheme"] == "https"
  host, path, query = env["HTTP_HOST"], env["PATH_INFO"], env["QUERY_STRING"]
  RedirectResponse.new("https://#{host}#{path}#{query.to_s.empty? ? "" : "?#{query}"}").finish
end