Sha256: 4a353e6a8ef0e25bf2d485193df6812a4eee8ebe4a7e782266f29cb95464e155
Contents?: true
Size: 1.02 KB
Versions: 2
Compression:
Stored size: 1.02 KB
Contents
#!/usr/bin/env ruby $:<< '../lib' << 'lib' require 'goliath' # Example demonstrating how to have an API acting as a router. # RackRoutes defines multiple uris and how to map them accordingly. # Some of these routes are redirected to other Goliath API. # # The reason why only the last API is being used by the Goliath Server # is because its name matches the filename. # All the APIs are available but by default the server will use the one # matching the file name. # Our custom Goliath API class HelloWorld < Goliath::API def response(env) [200, {}, "hello world!"] end end class Bonjour < Goliath::API def response(env) [200, {}, "bonjour!"] end end class RackRoutes < Goliath::API map '/version' do run Proc.new { |env| [200, {"Content-Type" => "text/html"}, ["Version 0.1"]] } end map "/hello_world" do run HelloWorld.new end map "/bonjour" do run Bonjour.new end map '/' do run Proc.new { |env| [404, {"Content-Type" => "text/html"}, ["Try /version /hello_world or /bonjour"]] } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
goliath-0.9.1 | examples/rack_routes.rb |
goliath-0.9.0 | examples/rack_routes.rb |