【发布时间】:2013-08-06 22:24:19
【问题描述】:
我正在使用 Sinatra 路由,如果可能的话,我想将普通的 HTTP 地址解释为路由中的参数:
url http://somesite/blog/archives
路线在哪里:
/http://somesite/blog/archives
代码是:
get '/:url' do |u|
(some code dealing with url)
HTTP URL 中的各种“/”会造成问题。
我发现的解决方法是只传递上面示例中“somesite”表示的 URL 部分,然后使用:
get '/:url' do |u|
buildUrl = "http://#{u}/blog/archives"
(some code dealing with url)
有没有办法直接处理完整的URL?
【问题讨论】:
-
你的最终目标是什么?
-
网页抓取提供的网址:buildUrl。我使用 nokogiri 处理提供的页面。也许只是不使用 sinatra。