嗨,我正在使用savon访问一些web服务。
我使用的代码是:

client=Savon.client(
    wsdl: "WebService.wsdl",
    env_namespace: "S",
    convert_request_keys_to: :camelcase
)

response=client.call(:send_doc)  do
    message(
      Attr1: "123",
      Attr2: "ABC")
    )

如何将请求文本发送到服务器?
当做
法克

最佳答案

Savon2提供Observer接口。您可以注册一个Observer,它会在发送请求之前得到通知。接口包含一个Builder对象,您可以在其中找到请求的xml内容。Builder#pretty()格式化XML内容。

class Observer
  def notify(_, builder, _, _)
    puts builder.pretty
    nil
  end
end

Savon.observers << Observer.new

另外,您可以将log: true添加到客户端配置中它允许记录请求。
client = Savon.client(log: true, ...)

关于ruby - Ruby Savon:如何将请求文本发送到服务器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17404531/

10-11 01:06