Sha256: d296b7fc3c1d43e752000b16e4582760d762053abe9756217dc43819abfe9494
Contents?: true
Size: 765 Bytes
Versions: 3
Compression:
Stored size: 765 Bytes
Contents
require 'sinatra' require 'FluidDb' require 'json' # Home class PostRest < Sinatra::Base set :static, true set :public_folder, File.expand_path('..', __FILE__) get '/' do send_file settings.public_folder + '/index.htm' end post '/sql' do content_type :json FluidDb::Db(ENV[params[:connection_string]]) .queryForResultset(params[:sql], []) .to_json end get '/rst/:db/:name' do content_type :json ps = request.env['rack.request.query_hash'] sql = %{ SELECT * FROM #{params[:name]} WHERE 1=1 #{ps.keys.map { |f| "AND #{f} = ? " }.join('')} LIMIT 2000 ; } FluidDb::Db(ENV[params[:db]]) .queryForResultset(sql, ps.values) .to_json end end PostRest.run!
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
postrest-0.0.3 | lib/app.rb |
postrest-0.0.2 | app.rb |
postrest-0.0.1 | app.rb |