SOAP 呼び出しを行うために savon 2.2 を使用しています。
初期化:
client = Savon.client(
wsdl: SOAP_WSDL,
endpoint: SOAP_URL)
このような SOAP 呼び出しを行うことができ、正常に動作します。
resp = client.call(:login, message: { username: SOAP_USER, password: SOAP_PASSWORD })
ここで、SOAP ヘッダーにいくつかのパラメーターを設定する必要がある別の呼び出しを行う必要があります。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'