ruby – 如何使用带有Sinatra斜线的参数?

sinatra,我遇到了一个小问题:当我使用带有斜线的参数时,它会混淆路由器引擎.那么有没有一种很好的方法来处理这种param而不必编码呢?

代码看起来像

get 'add/:url' do
   #....
end

我打算得到像/ add / http://sctackoverflow.com/这样的东西

解决方法

您是否尝试使用splat参数?

就像是:

get '/add/*' do
  protocol = params[:splat].first
  address = params[:splat][1..-1].join('/')

  url = protocol + "//" + address
end

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...