Rails - 使用外部SOAP API的最佳方式?

时间:2010-04-29 04:59:37

标签: ruby-on-rails ruby web-services soap

我正在开发一个需要频繁访问公共API的Rails应用程序,我不确定在Rails应用程序中放置外部API(SOAP / WSDL)代码的最佳方法是什么,模型是什么,我们如何管理那?有什么想法,评论吗?

2 个答案:

答案 0 :(得分:3)

当前用于使用外部SOAP服务的“最佳”库的竞争者似乎是SavonHandsoap。两个here

之间存在比较

我不能评论handsoap,因为我没有使用它,我很高兴Savon对我有用。

就应用程序结构而言,我将在lib下为外部实体命名的接口创建一个文件夹,然后使用rails的命名空间功能在其下存储文件。

举个例子,我有一个名为Sentinel的系统的外部接口。所以我有RAILS_ROOT / lib / sentinel,然后该文件夹中的所有类都在Sentinel模块中声明。

答案 1 :(得分:1)

要做的第一件事就是看看你想要与之接口的API是否有任何宝石。为gem写一个小的包装类,或者只包含它并在需要的地方使用它。

如果您正在寻求与REST服务交谈,我会建议使用rest-client gem。如果你想做一些完全自定义的事情,你可以使用Jon Nunemaker的HTTParty。 Nokogiri是一个XML解析器gem,对于使用基于XML的服务也很有用。