class Goliath::Rack::Cors
Constants
- DEFAULT_OPTIONS
Public Class Methods
new(app, options = {})
click to toggle source
Calls superclass method
# File lib/grass/goliath/rack/cors.rb, line 15 def initialize(app, options = {}) super(app) @options = DEFAULT_OPTIONS.merge(options) end
Public Instance Methods
call(env)
click to toggle source
Calls superclass method
# File lib/grass/goliath/rack/cors.rb, line 20 def call(env) if env['REQUEST_METHOD'] == 'OPTIONS' [200, cors_headers, []] else super(env) end end
post_process(env, status, headers, body)
click to toggle source
# File lib/grass/goliath/rack/cors.rb, line 28 def post_process(env, status, headers, body) [status, cors_headers.merge(headers), body] end
Private Instance Methods
cors_headers()
click to toggle source
# File lib/grass/goliath/rack/cors.rb, line 34 def cors_headers headers = {} headers['Access-Control-Allow-Origin'] = @options[:origin] headers['Access-Control-Allow-Methods'] = @options[:methods] headers['Access-Control-Allow-Headers'] = @options[:headers] headers['Access-Control-Expose-Headers'] = @options[:expose_headers] headers end