2013-05-02 39 views
1

我對rails很新穎。在我的項目中,我必須對許多服務器執行多次api調用(POST)。每次調用都需要一些參數,這些參數需要通過POST請求發送。只需要json數據就可以輕鬆應對。任何人都可以建議一些更好的方法來做到這一點,或有人有這種東西的經驗。 大多數這些操作將只是單個圓形條與包括導軌在內的遠程apis進行通信

我已閱讀Active Resourcenet::HTTP,我很困惑使用哪一個。由於Active Resource僅適用於RESTful API,所以我不知道如果我將與之通信的服務器將提供相同的服務。

在此先感謝!

回答

1

您必須檢查API是否與REST或SOAP協同工作。

如果是休息,你可以使用rest-client寶石

如果使用SOAP您可以使用savon寶石

0

net :: HTTP可以讓你的代碼在很短的時間內變得麻木。您應該選擇任何REST寶石,例如rest client

0

ActiveResource是一種用於與RESTful API進行交互的框架。 Rails將從Rails 4.0中的核心依賴關係中刪除AR,因此我不建議使用它,除非您需要使用另一個Rails應用程序。

就你而言,你需要一個HTTP庫。標準的Ruby HTTP庫是Net :: HTTP。還有其他幾個客戶端,主要基於Net :: HTTP。其中之一是rest-client

您可以直接使用Net :: HTTP或使用其他客戶端,例如rest-client,faraday,httparty等。Net :: HTTP不公開一個很好的API,這就是爲什麼存在多個替代客戶端和包裝。

僅供參考,ActiveResource也基於Net :: HTTP。

+0

感謝,也可以爲您建議我一些好的做法。據說我可能會與差異服務器進行通信,並且可能會持續增長,因爲它們都提供相同類型的服務,我正在做一個授權之王並提供一個通用接口來訪問差異提供者提供的服務。 – vivek 2013-05-03 08:34:26