問題タブ [savon]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
5241 参照

ruby-on-rails - サボン SSL の問題

Savon gem をサーバーの 1 つに接続するのに苦労しています。SSL を通過できないというエラーが表示され続けます。多数のチュートリアルと修正を読みましたが、どれも機能していないようです。

どんな助けにも感謝します-それを乗り越えることができれば、これは私の月曜日になります:-)。

エラー:

私のコード:

0 投票する
2 に答える
1583 参照

ruby - RubyとSavonを使用して単純なWebサービスクライアントを実行する方法

Savonを使用してRubyでWebサービスクライアントの簡単な例を開発しようとしています。

これは私がこれまでに得たものです:

ただし、そのコードを実行すると、次のようになります。

初期化されていない定数Savon::Client

Savonへの参照を追加する必要があると思いますか?(私はすでに対応する宝石をインストールしました)。

さらに、私はそのWebサービスで正しいことをしていますか?それは機能するはずですか?

お時間をいただきありがとうございます!

0 投票する
1 に答える
721 参照

ruby-on-rails - Savon + Rails 2 XML のリクエスト構造を変更する方法

Savon を使用して Web サービス クライアントを開発しています。私は初心者なので、最初に WDSL の例を試してみることにしました。私の場合は次のとおりです。

http://www.webservicex.com/CurrencyConvertor.asmx?wsdl

私のコントローラーはとてもシンプルです:

そのコードによって生成される XML は次のとおりです。

ただし、XML は次のようにする必要があります (soapUI を使用しているため、これはわかっています)。

応答として常に「0」(ゼロ)を取得し、soapUI によって生成された「正しい」XML 要求で正しい値(「0.6959」など)を取得するため、XML 要求が機能していないことはわかっています。

コードに何か不足していますか?

ありがとうございました!!!

0 投票する
3 に答える
4761 参照

ruby - savon を使用した SOAP メッセージ タグ名の大文字と小文字の問題

Windows 7 Professional 64 ビットで Ruby 1.9.2 と savon 0.9.2 を使用しています。

2 番目の Web SOAP サービスから取得したセキュリティ トークンを必要とする Web SOAP サービスを呼び出す必要があります。私が使用するコードは次のとおりです。

これにより、次のような XML が生成されます。

この XML の変な名前空間規則 (またはそれは私だけでしょうか) は気にしないでください。

私が直面している問題は、securitytoken タグ内のすべてのタグが、大文字であるべきところを小文字で始まることです。そう<tokenType>とだった<token>はずです。<TokenType><Token>

私の意見では、これらのタグの定義はすべて、savon クライアントの作成に使用される WSDL に含まれています。その定義は使用されていないか、誤って使用されているようです。

savon から正しい XML/SOAP メッセージを取得するにはどうすればよいですか?

0 投票する
2 に答える
1263 参照

ruby-on-rails - Savonを使用してSOAPヘッダーを手動でアセンブルする

Savonを使用してSOAPリクエストを送信するときに、「SOAPメッセージヘッダーが正しくありません」というエラーメッセージを処理してきました。

Savonによって生成されたものとまったく同じxmlをSOAPUIにコピーして貼り付けましたが、そのエラーは発生せず、期待どおりの応答が得られます。

ですから、私はさまざまなことを試すのにうんざりしているので、Savonの助けを借りずに自分のヘッダーを組み立てたいと思います。

私がやりたいことは次のようなものです:

ただし、Savonからこのエラーが発生します。

記号を文字列に変換できません

なんで?

前もって感謝します。

0 投票する
1 に答える
451 参照

ruby-on-rails - SOAP 要求での Savon 障害応答: 「アクション 'x' を含むメッセージは受信側で処理できません...」

Web サービス クライアントの実装に Savon を使用しています。

ただし、次のメッセージが表示されます。

(a:ActionNotSupported) EndpointDispatcher での ContractFilter の不一致により、アクション「SearchCars」を含むメッセージを受信側で処理できません。これは、コントラクトの不一致 (送信者と受信者の間のアクションの不一致) または送信者と受信者の間のバインディング/セキュリティの不一致が原因である可能性があります。送信者と受信者が同じコントラクトと同じバインド (メッセージ、トランスポート、なしなどのセキュリティ要件を含む) を持っていることを確認します。

石鹸リクエストを送信した後。

httpBindingか何かと関係があると読みました。

何か案は?

0 投票する
1 に答える
407 参照

ruby-on-rails - Savon(RoR)でBasicHttpBindingを指定する方法

このエラーが発生します:

(a:6016) EndpointDispatcher での ContractFilter の不一致により、アクション「xxx」を含むメッセージを受信側で処理できません。これは、コントラクトの不一致 (送信者と受信者の間のアクションの不一致) または送信者と受信者の間のバインディング/セキュリティの不一致が原因である可能性があります。送信者と受信者が同じコントラクトと同じバインド (メッセージ、トランスポート、なしなどのセキュリティ要件を含む) を持っていることを確認します。

そして、プロバイダーの WSDL で使用されているバインディングが次のようになっていることに気付きました。

BasicHttpBinding_IxFlow

Savon Controller でそれを指定する必要があると思います。どうやってやるの?

どうも。

0 投票する
0 に答える
243 参照

ruby-on-rails - SOAP アクションが期待どおりに解析されない

何らかの理由で、試してみると:

応答はランダムな障害メッセージを返します。ただし、SOAP アクション URL を指定すると、次のようになります。

それは完全に機能します。

これは、wsdl を解析する Savon の問題ですか?

解決済み:アクションに小文字を使用しなければならなかった!

0 投票する
2 に答える
2162 参照

ruby - Savon:ヘッダーを変更する方法または何か違う

Savonでは、変更する方法はありますか

することが

または何か違う?

私はリクエストブロックで次のような追加のヘッダータグを付けてみました:

しかし、それはうまくいきません。

Savon Docsを閲覧しましたが、XMLを手動で作成するだけで、そのタグを変更できる場所が見つかりませんでした。

0 投票する
1 に答える
3283 参照

ruby - Savon に正しい XML を形成させることができません

私は以前にSOAPを使用したことがありますが、何年も前にSOAPを使用したことがあります。

ショートストーリー...

  • 「Soap Client」OS X アプリを使用すると、希望する応答を得ることができます。
  • 使用すると、結果はclient.request :foo_web_serivce, :language_count, :body => { :foo_app_id => "...", :session_id => "..." }得られますが、 app_id が認識されていないと私は信じています。Status 200-1
  • <LanguageCount>Savon の呼び出し ( ) ではなく、Soap Client の呼び出し ( ) を複製しようとすると<foo_web_service:LanguageCount>Status 500.

あらかじめご了承ください。

長い話...

SOAP クライアントを使用すると、正しい要求 XML は次のようになります。

ただし、次のようにコンソールで実行しようとすると:

しかし、foo_web_service の名前空間を使用すると、次のようになります。