JSONP output helper for Sinatra. Automatically detects callback params and returns proper JSONP output. If callback params where not detected it returns plain JSON. Works with jQuery jQuery.getJSON out of the box.
Gem install
gem install sinatra-jsonp
Gemfile
gem 'sinatra-jsonp'
Classic:
require "sinatra"
require "sinatra/jsonp"
get '/hello' do
data = ["hello","hi","hallo"]
JSONP data # JSONP is an alias for jsonp method
end
# define your own callback as second string param
get '/hi' do
data = ["hello","hi","hallo"]
jsonp data, 'functionA'
end
# same with symbol param
get '/hallo' do
data = ["hello","hi","hallo"]
jsonp data, :functionB
end
Modular:
require "sinatra/base"
require "sinatra/jsonp"
class Foo < Sinatra::Base
helpers Sinatra::Jsonp
# Enable JSON pretty output
#enable :json_pretty
get '/' do
data = ["hello","hi","hallo"]
jsonp data
end
end
MIT License. See LICENSE for details.