Module: RocketPants::JSONP::ClassMethods

Defined in:
lib/rocket_pants/controller/jsonp.rb

Instance Method Summary collapse

Instance Method Details

#jsonp(options = {}) ⇒ Object

Marks the current controller as supporting JSONP-style responses.

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :parameter (Symbol, String)

    If set, specifies the param name of the callback. Defaults to :callback.

  • :enable (true, false)

    Whether to enable JSONP. true by default.



19
20
21
22
23
24
25
26
27
28
# File 'lib/rocket_pants/controller/jsonp.rb', line 19

def jsonp(options = {})
  enable = options.delete(:enable) { true }
  param  = options.delete(:parameter).try(:to_sym)
  if enable
    after_filter :wrap_response_in_jsonp, {:if => :jsonp_is_possible?}.reverse_merge(options)
    self._jsonp_parameter = param if param
  else
    skip_after_filter :wrap_response_in_jsonp, options
  end
end