Updated to Crystal 0.9.0

This commit is contained in:
Sdogruyol 2015-10-23 20:55:41 +03:00
parent 72390a3ebf
commit d23eff9acc
2 changed files with 9 additions and 8 deletions

View file

@ -1,5 +1,5 @@
require "http/server" require "http/server"
require "cgi" require "uri"
class Frank::Handler < HTTP::Handler class Frank::Handler < HTTP::Handler
INSTANCE = new INSTANCE = new
@ -18,16 +18,17 @@ class Frank::Handler < HTTP::Handler
end end
def exec_request(request) def exec_request(request)
uri = request.uri uri = request.resource
components = uri.path.not_nil!.split "/" components = request.path.not_nil!.split "/"
@routes.each do |route| @routes.each do |route|
params = route.match(request.method, components) params = route.match(request.method, components)
if params if params
if query = uri.query if query = request.query
CGI.parse(query) do |key, value| split = query.split("=")
key = split[0]
value = split[1]
params[key] ||= value params[key] ||= value
end end
end
frank_request = Request.new(request, params) frank_request = Request.new(request, params)
context = Context.new(frank_request) context = Context.new(frank_request)

View file

@ -7,7 +7,7 @@ class Frank::Route
def match(method, components) def match(method, components)
return nil unless method == @method return nil unless method == @method
return nil unless components.length == @components.length return nil unless components.size == @components.size
params = nil params = nil