問題タブ [soap-client]
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.
php - PHPのsoapclient応答をキャッシュする方法は?
WSDLをキャッシュできることは知っていますが、php soapclientの構成を通じてsoap応答をキャッシュする方法はありますか?
明らかに、データベースにいくつかのテーブルを作成し、cronを実行することで、自分自身を「キャッシュ」することができます。これにはもっと手間がかかり、soapサーバーからクライアントに返される明示的なSOAPデータのキャッシュ機能を指定する方法があるかどうか疑問に思っています。
ブラウザがヘッダーに基づいてさまざまなデータをキャッシュする方法と同様ですか?
石鹸サーバーを適切に構成する必要がありますか、それともこれは石鹸クライアントで厳密に実行できることですか。
私たちのsoapサーバーはサードパーティベンダーであり、私たちがほとんど制御できないので、可能であれば、soapclient側にソリューションを維持したいと思っています。
これが存在しない場合は、すべての提案/代替案(私が言及したものを除く)を受け入れます。
php - 2 つの簡単な PHP SOAP setHeaders の質問
リクエストヘッダーを生成するために使用しているコードは次のとおりです。
これにより、次が生成されます。
それはすべて元気でダンディです。
ここに私の2つの質問があります:
API ドキュメントでは、ユーザー名がns1:usernameで、パスワードがns2:passwordである必要があります。私は両方ともns2です。まず、ns1|2 の意味は何ですか? どうすればこれを修正できますか?
2 番目の質問は、SOAPHEADER() を 1 回呼び出すだけで同じ結果を生成する方法はありますか?
c# - Visual Studio 2010 SOAP サービス リファレンスが null 値のみを返す
Visual Studio 2010 の「サービス参照の追加」ツールを使用して生成されたクライアントは、リモート関数の呼び出しに対して null 値を返します。
サーバーは Perl CGI スクリプト (SOAP::Transport::HTTP::CGI) であり、他のクライアントでのテストを通じて正しく機能していることがわかっています。POD::WSDL を使用して、「サービス参照の追加」に必要な WSDL ファイルを生成しました。
サーバーがクライアントからメッセージを取得し、適切な結果を返していることを確認しました。これにより、クライアントの構成または .NET の XML パーサーに何らかの欠陥があると結論付けました。エラーはスローされず、クライアントを呼び出すアプリケーションでトリッキーなことは何も試みません。
誰かが以前にこの問題を抱えていましたか? または、XMLSerializer のデバッグ情報を取得する方法を知っていますか? WSDL ファイルは、正しく送信する手段を記述しているが、応答を解釈する方法を記述していない可能性がありますか?
Service.ServiceHandlerClient client = new Service.ServiceHandlerClient("ARMService", "https://domain/server_soap");
string wut = client.cat_test("a", "b"); // "a b" を返す必要があり
ます Console.WriteLine("results: " + wut ); // 常に null です!
php - PHP SoapClient - 応答で属性値を返す
Web サービスから値を取得しようとしています。
応答は次のようにフォーマットされます。
PHPコード
しかし、戻り値にアクセスしようとすると、name 属性を持つ stdClass だけが取得されます..
c# - C# から PHP SOAP サービスを利用する
簡単なWebサービスを作りました
wsdl:
サービス:
function mysum($parameters) {
$result = $parameters->item[0]->value + $parameters->item[1]->value;
return $result ;
}
ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache
$server = new SoapServer("mysum.wsdl");
$server->addFunction("mysum");
$server->handle();
PHPクライアントからアクセスできます:
$client = new SoapClient("http://www.my-uni-
project.info/joomla/components/com_jv_vm_soa/mysum.wsdl");
$params = array('n1' => '4', 'n2' => '8');
echo $result;
} catch (SoapFault $exception) {
echo $exception;
}
C#クライアントを作成しようとしたので、最初にサービス参照「mysum」を作成し、次にフォームにボタンとラベルを追加し、ボタンに次のコードを追加しました
実行すると、次のエラーが発生します。
サービスはオンラインです
高度なジョンに感謝します
php - PHPのSoapClientが、本文とは異なる名前空間をヘッダーに作成するのはなぜですか?
私はeWayサーバーと通信しようとしていて、別のAPIに切り替える必要が生じるまですべてが機能していました。問題は、SoapClientがヘッダー(認証を含む)と本文から異なる名前空間を作成していることです。これは明らかに、結果を取得しません。代わりに、eWayのサーバーが認証情報を持っている必要があると言っています。
これが私のコードです:
ご覧のとおり、ヘッダーにSoapVarを使用した場合と使用しない場合で、すべて運が悪かったので試してみました。
作成されるXMLリクエストは次のとおりです。
php - PHP:foreachで奇妙に動作する配列
SOAPクライアントを介したクエリデータであるクラスがあります。クエリの結果は、オブジェクトの配列として返されます。何か奇妙なことが起こっています。配列に要素が1つある場合にのみ発生するかどうかはわかりません。
コードは次のとおりです。
アプリケーションを実行するときは、var_dump($ noteso)で問題ありません。プリントアウト
ただし、foreachループの2番目のvar_dump($ note-> ResourceID)には、
その後、配列にアクセスする各行はエラーをスローします。
行204は
しばらくの間これをデバッグしようとしていますが、誰かが何か提案をすることができますか?
よろしく、
ジョーニー
architecture - エンタープライズライブラリを使用するかどうか?
私は、すべての複雑なビジネスロジックを備えた多層SOAベースのエンタープライズアプリケーションを使用しています。多くのビジネス検証では、データベースからの大量のサポートデータが必要であり、パフォーマンスが低下します。同時ユーザーの数は約1000人です。クライアントは多層で、WinFormsが最上位にあります。
ほぼすべてのエンタープライズライブラリブロックを検討しています。
- アプリケーションブロックのキャッシュ
- データアクセスアプリケーションブロック
- 例外処理アプリケーションブロック
- ロギングアプリケーションブロック
- ポリシーインジェクションアプリケーションブロック
- セキュリティアプリケーションブロック
- Unityアプリケーションブロック
検証アプリケーションブロック
- エンタープライズライブラリは正しい方向に進んでいますか?
- あなたの意見でより良いライブラリ/フレームワークを提案してください、しかしそれらがより良い方法を伝えることを検討してください。
- エンタープライズライブラリを他のライブラリと混合するのは悪い習慣でしょうか?たとえば、ロギングにlog4netを使用することを検討します。
zend-framework - SSL: PHP の SoapClient を使用して SOAP サービスにアクセスするパイプが壊れている
PHP の SoapClient (Zend Framework の Soap Client でラップ) を介してアクセスする SOAP WS があります。Web サービスは https を介して実行され、呼び出しにはかなりの時間がかかります (それぞれ数分)。
SoapClient の同じインスタンスを介して 4 つの呼び出しを次々と行っています。ただし、しばらく実行した後、ランダムな時点で (常に同じメソッド呼び出しであるとは限りません)、次のエラーが表示されます。
警告: SoapClient::__doRequest(): SSL: pathtomyfile の壊れたパイプ
php - PHP SOAPでSOAPパラメータの順序が重要なのはなぜですか。また、それを修正する方法を教えてください。
PHPマニュアルへのコメントは次のように述べています。
このメソッドを使用している場合は、引数の配列を、SOAPエンドポイントが期待するのと同じ順序で渡す必要があることに注意してください。
例://サーバーが期待するもの:Foo(string name、int age)
引数の値を動的に割り当てるSOAPクライアントを構築しています。つまり、引数が常に正しい順序であるとは限りません。これにより、実際のSOAP呼び出しが中断されます。
各呼び出しのパラメーターの順序を確認する以外に、これに対する簡単な解決策はありますか?