Class: Rack::Authenticate::Middleware
- Inherits:
-
Rack::Auth::Basic
- Object
- Rack::Auth::Basic
- Rack::Authenticate::Middleware
- Defined in:
- lib/rack/authenticate/middleware.rb
Defined Under Namespace
Classes: Auth, Configuration
Constant Summary collapse
- ACCESS_CONTROL_MAX_AGE =
24 hours
60 * 60 * 24
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app) {|@configuration| ... } ⇒ Middleware
constructor
A new instance of Middleware.
Constructor Details
#initialize(app) {|@configuration| ... } ⇒ Middleware
Returns a new instance of Middleware.
135 136 137 138 139 |
# File 'lib/rack/authenticate/middleware.rb', line 135 def initialize(app) @configuration = Configuration.new yield @configuration super(app, &@configuration.basic_auth_validation_block) end |
Instance Method Details
#call(env) ⇒ Object
141 142 143 144 145 146 147 148 149 150 |
# File 'lib/rack/authenticate/middleware.rb', line 141 def call(env) auth = Auth.new(env, @configuration) return cors_allowances(env) if auth.supported_cors_preflight_request? _call(env, auth) { super }.tap do |(status, headers, body)| if @configuration.support_cross_origin_resource_sharing? && env.has_key?('HTTP_ORIGIN') headers['Access-Control-Allow-Origin'] = env['HTTP_ORIGIN'] end end end |