class Upfluence::HTTP::Middleware::CORS
Constants
- HEADERS
Public Class Methods
new(app, headers = nil)
click to toggle source
# File lib/upfluence/http/middleware/cors.rb, line 11 def initialize(app, headers = nil) @app = app @headers = headers || HEADERS end
Public Instance Methods
call(env)
click to toggle source
# File lib/upfluence/http/middleware/cors.rb, line 16 def call(env) status, headers, body = options?(env) ? default_response : @app.call(env) [status, merge_headers(headers), body] end
Private Instance Methods
default_response()
click to toggle source
# File lib/upfluence/http/middleware/cors.rb, line 23 def default_response [200, {}, ['']] end
merge_headers(headers)
click to toggle source
# File lib/upfluence/http/middleware/cors.rb, line 31 def merge_headers(headers) headers.merge(@headers) { |_, x, _| x } end
options?(env)
click to toggle source
# File lib/upfluence/http/middleware/cors.rb, line 27 def options?(env) Rack::Request.new(env).options? end