Sha256: 8bfd43491348a1eaa7363bbd9677c96767c988faa76fd7315edd093b5b47c7e7

Contents?: true

Size: 687 Bytes

Versions: 6

Compression:

Stored size: 687 Bytes

Contents

$:.push(File.dirname(__FILE__) + "/../lib")

# Just run `ruby examples/simple.rb` and then use something like
# `curl http://localhost:2345/api/v1/`.

require "rack/api"
require "logger"

$logger = Logger.new(STDOUT)

# Simulate ActiveRecord's exception.
module ActiveRecord
  class RecordNotFound < StandardError
  end
end

Rack::API.app do
  prefix "api"

  rescue_from ActiveRecord::RecordNotFound, :status => 404
  rescue_from Exception do |error|
    $logger.error error.message
    [500, {"Content-Type" => "text/plain"}, []]
  end

  version :v1 do
    get "/" do
      raise "Oh no! Something is really wrong!"
    end
  end
end

Rack::Handler::Thin.run Rack::API, :Port => 2345

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rack-api-1.1.0 examples/rescue_from.rb
rack-api-1.0.2 examples/rescue_from.rb
rack-api-1.0.1 examples/rescue_from.rb
rack-api-1.0.0 examples/rescue_from.rb
rack-api-0.3.1 examples/rescue_from.rb
rack-api-0.3.0 examples/rescue_from.rb