如何使用Ruby和Savon执行简单的Web服务客户端

时间:2011-06-20 21:49:42

标签: ruby web-services savon

我正在尝试使用Savon在Ruby中开发一个Web服务客户端的简单示例。

这是我到目前为止所得到的:

class WebServiceController < ApplicationController  
  def index
    puts "web_service: IN"    
    client = Savon::Client.new do
      wsdl.document = "http://www.webservicex.com/CurrencyConvertor.asmx?wsdl"
    end
    response = client.request :conversion_rate do
      soap.body = {
        :from_currency => 'USD',
        :to_currency => 'EUR'
      }
    end
    puts response.to_hash;
    render :text => response.to_hash.to_s
  end
end

然而,当我运行该代码时,我得到:

  

未初始化的常量Savon :: Client

我想我必须添加一些对Savon的引用? (我已经安装了相应的宝石)。

此外:我是否在该网络服务中做正确的事情?它应该有用吗?

感谢您的时间!

2 个答案:

答案 0 :(得分:1)

如果这是Rails 3应用程序,请将其添加到Gemfile

gem 'savon'

然后,运行bundle install并重新启动开发服务器。

答案 1 :(得分:0)

我想你已经添加了

require 'savon'

你文件中的某个地方?