您好,我正在使用 Savon 访问一些网络服务。
我正在使用此代码:
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")
)
如何将请求文本发送到服务器?
问候 法克
最佳答案
Savon 2 提供 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, ...)
关于鲁比·萨文 : How to get the request text sent to server?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17404531/