0

私は Rails で開発を行っており、gem Savon ( http://savonrb.com ) を使用しています。

私がしなければならないことは、wsdl が 2 つ持っているサービスと自分自身を統合することです。1 つは認証用で、もう 1 つはさまざまな機能用です。

次の 2 つの wsdl があります。

  1. 「https://.../authentication.asmx?wsdl」
  2. 「https://.../lists.asmx?wsdl」

私が最初にすることはこれです:

client = Savon::Client.new do |wsdl, http|
  http.auth.ssl.verify_mode = :none
  wsdl.document = "https://.../authentication.asmx?wsdl"
end
response = client.request :soap, :login, :body => {:username => "...", :password => "..."}

ログインしたら、2 番目の wsdl を使用して関数を実行する必要がありますが、認証内で別のクライアントを宣言することはできません。最初に言ったことを失います。

response = client.request :get_list_collection do
  soap.endpoint = URI(URI.escape("https://.../lists.asmx?wsdl"))
end

私は多くのことを試しましたが、解決策は見つかりませんでした。

この問題を解決する方法はありますか?

4

0 に答える 0