【问题标题】:Consuming REST API Rails使用 REST API Rails
【发布时间】:2012-10-20 23:48:29
【问题描述】:

我查看了this 问题,但它已经很老了,我觉得现在有其他替代 ARes 的方法。

鉴于很多人似乎认为 ActiveResource 有点过时和重量级,我查看了Api SmithHerRoar,当然还有 ARes。

在这些宝石中,哪一种是最可靠且经得起未来考验的替代品?

【问题讨论】:

    标签: ruby-on-rails api activeresource rails-roar


    【解决方案1】:

    Roar gem 的目的是帮助您构建和反序列化对象,它处理几种不同的 JSON 格式,如 JSON-API、JSON-HAL 等、XML,并且扩展底层 Representable Gem(从流行的 ROXML gem 派生)相当容易)。考虑到 Roar 是迄今为止最受欢迎的 ARes 替代品,并且是更大的 Trailblazer 生态系统的一部分(你可以单独使用它)——我认为 Roar 更“面向未来”。但我可能有偏见。

    【讨论】:

      【解决方案2】:

      我发现简单地使用 open-uri 和 json 是一个可行的选择。更少的样板和更多的控制/可配置性。

      例子:

      @people = JSON.parse(open("http://api.people.com:3000/people").read, symbolize_names: true)
      

      【讨论】:

        【解决方案3】:

        为什么不使用 HTTParty 或 Faraday 等较低级别的库?它们将为您涵盖很多丑陋的东西(ssl、解析/序列化 json 和 XML、日志记录、添加标头...),您将完全控制 URL 和数据管理。

        【讨论】:

        • 当然,这也是一个可行的替代方案,API smith 基本上是 HTTParty,而 Her 是在 Faraday 上构建的,添加了类似 ORM 的约定,很像 ARes。这些库稍微减少了样板代码,但也许不值得?
        • 从来没有发现它值得。它总是在避免的样板和较少的控制和可配置性之间取得平衡。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-25
        • 1970-01-01
        • 1970-01-01
        • 2011-07-20
        相关资源
        最近更新 更多