Passenger で Sinatra アプリを実行しています。おおよそ次のようなアクションがあります。
get '/pic/:id' do
# do stuff ...
canonical_image_url = "/img/%d.jpg" % params[:id]
end
ただし、次の例外でアプリが失敗していることがわかります
ArgumentError (invalid value for Integer(): "22?fill=width&width=512&sig=173798632b6ce659234a34c05324196c92b9a8ef")
これは、どういうわけか QS パラメータがパスから抽出されていないことを意味します。これはある種の奇妙なエスケープの問題ですか?(アプリの一部が二重にエンコードされたクエリ文字列を要求していること)、またはこれは既知の問題ですか? それとも、そのように設計されており、path-params と QS params を同時に使用することはできませんか?