我有像
这样的Sinatra路线get 'check/:input' do |in|
##Do stuff in here
end
但是当我在一个包含正斜杠的输入中输入一个字符串,例如“abcde / 12345”或甚至编码为“abcde%2F12345”时,Sinatra正在考虑我想要达到
check/abcde/12345
我点击标准的Sinatra 404页面。我该如何解决这个问题?我需要输入变量中的斜杠,所以我不能简单地修剪它或类似的东西。任何帮助将不胜感激!!
答案 0 :(得分:1)
这是rack-protection
的path traversal protection的一部分故意做的。
要禁用它,您可以执行
set :protection, :except => :path_traversal
答案 1 :(得分:0)
这可能就是你要找的东西。在这里回复的人的道具:https://stackoverflow.com/a/529172/78551
基本上你让路由器感到困惑。您需要将其作为单独的输入拉入,并将它们连接回动作。