为什么在Net :: HTTP上使用法拉第?

use*_*728 8 ruby wrapper faraday

为什么有人会直接使用Net :: HTTP来使用法拉第宝石?使用这样的包装有什么好处?

Chr*_*ell 11

Net::HTTP直接使用适配器很好,它只是将您的代码绑定到特定的接口,这可能与备用工具不同.一个人会使用的主要原因Faraday是它包装了多个适配器,其中一个是Net::HTTP.如果您使用Faraday,并开始了与Net:HTTP,你可以在以后决定使用Excon,Typhoeus,PatronEventMachine不超过一两行配置的改变更多.如果您Net::HTTP直接使用,则必须更改许多特定于实现的代码才能切换到另一个适配器.

  • 是的@user3084728,法拉第将捕获每个适配器的异常并将它们重新抛出为法拉第异常。 (3认同)
  • 很好的解释。您还应该提到中间件。例如,我使用 JSON 中间件自动将我的请求编码为 JSON 并解码 JSON 的响应。 (2认同)
  • 法拉第还应该帮助规范所有库的异常,对吗? (2认同)