オプションのクエリパラメータを使用してSinatraAPIルートを作成したい。次のようにクエリパラメータを追加できます。
%r {^/mysql/data /(?)/ start_time =(?\ w *)/?}
ただし、上記のルートに対応するルートは「/ mysql/data /:name/start_time =:start_time」のようになります。
クエリパラメータをオプションとして、URL形式で宣言する必要があります。
例えば:
/ mysql/data /:name?start_time =:start_time&end_time =:end_time
シナトラでこれを行う方法はありますか?
シナトラドキュメントからの引用:
# Routes may also utilize query parameters:
get '/posts' do
# matches "GET /posts?title=foo&author=bar"
title = params[:title]
author = params[:author]
# uses title and author variables; query is optional to the /posts route
end
あなたの場合、単に/mysql/data/:name
を使用すると、クエリパラメータはparams
を介して自動的に利用可能になります。