Skip to content

Instantly share code, notes, and snippets.

@thilonel
Last active March 25, 2016 14:10
Show Gist options
  • Save thilonel/ca181a6aad3416866f08 to your computer and use it in GitHub Desktop.
Save thilonel/ca181a6aad3416866f08 to your computer and use it in GitHub Desktop.
auth_api
require 'rack/app'
require 'escher'
require 'escher-keypool'
require 'escher/rack_middleware'
Escher::RackMiddleware.config do |c|
c.add_escher_authenticator { Escher::Auth.new(Credential::Scope, Credential::AuthOptions) }
c.add_credential_updater { Escher::Keypool.new.get_key_db }
end
class YourAwesomeApp < Rack::App
# for controller/App level
middleware do |builder|
builder.use Escher::RackMiddleware
end
get '/whoami' do
request.env['request.api_key_id']
end
get '/users' do
JSON.dump(User.all)
end
get 'users/:user_id' do
JSON.dump(User.find(params['user_id']))
end
end
#or from global
# use Escher::RackMiddleware
run YourAwesomeApp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment