Sinatra Net :: HTTP会在简单请求中导致超时

时间:2013-03-26 16:11:59

标签: ruby post sinatra

我有一个小的简单Net::HTTP POST请求要对我的Sinatra应用程序执行:

def collect(website)
    uri = URI("http://localhost:9393/save/#{website}")
    res = Net::HTTP.post_form(uri, 'q' => 'ruby', 'max' => '50')
    puts res.body
end

但它导致超时。这是请求处理程序:

post '/save/:website' do |website|
    puts request.body
    "done"
end

我从未到达putsdone。我的shotgun服务器当然在端口9393上运行。当我使用REST控制台扩展并在其中粘贴有效的json时,它适用于相同的路径。

导致此Timeout :: Error的原因是什么?

1 个答案:

答案 0 :(得分:1)

所以奇怪的是,我将服务器从shotgun更改为仅使用sinatra和gem sinatra/reloader运行它。我使用的是shotgun,因为只要源文件发生变化,它就会自动重新加载,而sinatra本身则没有。

在放弃shotgun之后,它立即开始工作。