##Sinatra中的路由(route)
我们需要学习Sinatra中的路由(route),在Sinatra中,一个路由分为两部分:HTTP方法(GET, POST等)和URL匹配范式。 每个路由都有一个要执行的代码块:
get '/' do
.. 显示内容 ..
end
post '/' do
.. 创建内容 ..
end
路由按照它们被定义的顺序进行匹配。 第一个与请求匹配的路由会被调用。
路由范式可以包括具名参数,可通过params哈希表获得:
get '/hello/:name' do
# 匹配 "GET /hello/foo" 和 "GET /hello/bar"
# params['name'] 的值是 'foo' 或者 'bar'
"Hello #{params['name']}!"
end
路由范式也可以包含通配符参数, 可以通过params['splat']数组获得。
get '/say/*/to/*' do
# 匹配 /say/hello/to/world
params['splat'] # => ["hello", "world"]
end
get '/download/*.*' do
# 匹配 /download/path/to/file.xml
params['splat'] # => ["path/to/file", "xml"]
end
更多的关于Sinatra知识需要查看资料。