1

我对rails相当陌生。在我的项目中,我必须对许多服务器进行多次 api 调用(POST)。每个调用都需要一些参数,这些参数需要通过 POST 请求发送。响应很简单,只需要 json 数据。任何人都可以建议一些更好的方法来做到这一点,或者有人对这种东西有经验。大多数这些操作将只是单个圆条

我已经阅读Active Resource并且net::HTTP我很困惑该使用哪一个。因为Active Resource仅适用于 RESTful api,所以我事先不知道我将与之通信的服务器是否会提供相同的服务。

提前致谢!

4

3 回答 3

1

您必须检查 API 是否使用 REST 或 SOAP。

如果是 REST,您可以使用rest-client gem

如果它使用 SOAP,您可以使用savon gem

于 2013-05-02T13:10:06.853 回答
0

net::HTTP 真的可以在很短的时间内让你的代码变得混乱。您应该选择任何现有的 REST gem,例如rest client

于 2013-05-02T12:27:03.443 回答
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。

于 2013-05-02T12:29:49.833 回答