2011-08-17 142 views
4

我想使用open-uri獲取一個URL。軌道打開路徑

我的代碼是悍然簡單

 
    url = open("http://localhost:3000/descriptions") 

    return render :text => url.to_json 

當我運行這段代碼,我得到一個超時錯誤。

當我請求「http:// localhost:3000」時,我得到了我的主頁(這是正確的)。 所以看來這是在某個地方的道路上打破。 我已經嘗試使用網絡http與uri(不知道這是否會有所作爲),我仍然有同樣的問題。我想得到一條路徑和一條查詢,但我似乎無法讓它工作。

+0

將URL分成domain/path和open() - Ruby中的Net :: HTTP文檔描述了這一點。 –

回答

6

當然:我猜你使用的是默認的WEBrick服務器這是唯一能夠一次處理一個請求:

  • 一個由控制器的動作消耗

  • 一個是通過您的通話open消耗

兩個解決方案:

  • 薄麒麟或任何

  • 推出兩臺服務器的WEBrick替換開發的WEBrick:rails s & rails s -p 3001。一個在端口3000上,另一個在端口3001上

+0

就是這樣。我沒有意識到webrick每次只允許一個請求。奇怪的是,它會檢索主頁,但只有在路徑上休息。很高興知道這是原因。 – pedalpete