gpt4 book ai didi

ruby-on-rails - 无法在savon调用上设置SOAP header 参数

转载 作者:行者123 更新时间:2023-12-04 14:01:46 26 4
gpt4 key购买 nike

我正在使用savon 2.2进行SOAP调用。

初始化:

  client = Savon.client(
wsdl: SOAP_WSDL,
endpoint: SOAP_URL)

我可以像这样进行SOAP调用,并且可以正常工作:
resp =  client.call(:login, message: { username: SOAP_USER, password: SOAP_PASSWORD })

现在,我需要进行另一个调用,这需要在SOAP header 中设置一些参数。从savorb.com上的文档中,我发现我应该使用request方法:
 response = client.request :get_user_info do
soap.header = { :session_id => sid }
end

但是我收到一条错误消息,指出请求方法不存在:
undefined method `request' for #<Savon::Client:0x007f1560f80490>

我可以使用不同版本的savon还是什么?我尝试使用“调用”而不是“请求”,但是我得到了:
ArgumentError - wrong number of arguments (1 for 2):
gem) savon-2.2.0/lib/savon/options.rb:35:in `method_missing'
(gem) savon-2.2.0/lib/savon/block_interface.rb:20:in `method_missing'
app/models/tool.rb:23:in `block in doUpload'

最佳答案

您正在使用Savon 2.2.0。
你应该用

response = client.call(:get_user_info, :soap_header => { :session_id => sid })

“请求”是1.x版中的一种方法,不再受支持。

关于ruby-on-rails - 无法在savon调用上设置SOAP header 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18466054/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com