soap - 如何设置 savon 版本 2 的参数

标签 soap wsdl savon

我正在阅读与 savon 版本 1 一起使用的railscast #290。 所以我尝试替换版本2的命令,但我做不到。

http://railscasts.com/episodes/290-soap-with-savon?view=asciicast

我替换了这样的命令。

ver1 client = Savon::Client.new("http://www.webservicex.net/uszip.asmx?WSDL")

ver2 client = Savon::Client.new(wsdl: "http://www.webservicex.net/uszip.asmx?WSDL")

ver1 client.wsdl.soap_actions

ver2 client.operations

ver1 client.request :web, :get_info_by_zip, body: { "USZIP"=> "90210"}

ver2 client.call(:get_info_by_zip) # 需要更多

如何设置命名空间 web 和正文参数 USZIP90210

最佳答案

试试这个(虽然 www.webservicex.net 不是很可靠):

#!ruby

require 'savon'

WSDL_URL = 'http://www.webservicex.net/uszip.asmx?wsdl'

client = Savon.client(wsdl: WSDL_URL,
                      log: true, # set true to switch on logging
                      log_level: :debug,
                      pretty_print_xml: true)

zip = ARGV[0] || "10004"

response = client.call(:get_info_by_zip, message: {"USZip"=>zip})

print response

关于soap - 如何设置 savon 版本 2 的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20257324/

相关文章:

wcf - wcf 服务上的 wsHttpBinding 和客户端上的 Web 引用不起作用

ruby - 使用 Ruby Savon 验证针对 WSDL 的 XML 响应

Ruby & Savon SOAP 客户端 - 无法找到 SOAP 操作

c++ - 如何使用sqlite3 C++将整数转换为字符串

Java webservice (soap) 客户端 - 使用证书

java - Apache CXF : A SOAP 1. 2 消息在发送到仅 SOAP 1.1 端点时无效

java - 从 wsdl 创建 Web 服务

wcf - svcutil、WSDL 和生成的接口(interface)不足以实现

ruby - 使用 multiRef 解析 Savon SOAP 响应

iphone - 如何从 iPhone 访问 SOAP 服务