• 締切済み

AJAXでSOAPを利用する定番の方法は?

お世話になります。 SOAPで実現されている某サービスのWeb APIを、AJAXで呼び出して利用することを考えています。 (今更SOAPかよ?という感じですが、それはさておきまして…) このような利用をする際の、定番の方法はあるのでしょうか? JavaScriptのSOAPクライアントライブラリで、何か定番等があっても良さそうな気がするのですが、Webで探しても、定番と言えそうなものが見つかりませんでした。 もし定番がないとしましたら、何故未だ、定番といえるものがないのでしょうか。 (SOAPの概要は知っていますが、今まで使う縁がなく、詳細を私は知りません)

みんなの回答

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.2

クライアントから別サーバとAJAXは不可能。サーバ側でやるのが定石。

ss-ak
質問者

お礼

(一般的には)おっしゃる通りですね。 ご指摘ありがとうございます。

ss-ak
質問者

補足

すみません、説明不足でした。 一般的には、確かにおっしゃる通りなのですが、今回は、クライアント側とサーバ側が同一ドメインのため、技術的にはAJAXが適用可能と考えています。 考えてみれば、こういうケースは少ないでしょうから、未だJavaScriptのSOAPクライアントが定着していないのも、不思議ではないですね。

  • shockatz
  • ベストアンサー率80% (153/191)
回答No.1

使ったことはないけど、jqSOAPClientてのがあります。 http://archive.plugins.jquery.com/project/jqSOAPClient SOAPは非常に巨大な仕様で、バイナリ、認証、暗号化などさまざまな要件を含んでいて、実装レベルもまちまちなため、javascriptのライブラリとするには荷が重すぎると思います。 (シリアライズ仕様までオプション。。phpレベルだと満足なSOAPパーサは存在しません) Web APIがどのようなものか不明なのですが、SOAP 1.0レベルのWebMethodであれば、jqSOAPClientでもパースできるかもしれませんが、確約できませんし、仕様変更でお手上げになることも考えれば、サーバサイドのASP.NETかJAVAで、ブリッジサービスを書く方が現実的なような気がします。

ss-ak
質問者

お礼

情報ありがとうございます。 jQueryのプラグインのようですね。 何故AJAXでやりたいかと言えば、クライアント側をなるべく軽くシンプルな作りにしたいからなのですが、SOAPを呼ぼうとする時点で、あまり軽くしようがないのかもしれないですね…。