ホームページ  >  記事  >  バックエンド開発  >  SoapClient の問題について

SoapClient の問題について

WBOY
WBOYオリジナル
2016-06-23 14:13:401706ブラウズ

Web サイトでは、いくつかの SoapClient 情報を確認しました。
デモは次のとおりです:

1. クライアントsoapClient.php:
try 'location'=> " http://localhost/WebService/soapService.php",
echo ); $result1; }
catch ( SoapFault $e ) { echo $e->getMessage (); }
catch ( Exception $e ) { echo $e->getMessage () }

; . サーバーsoapService.php:
//非wsdlモードでWebサービスを提供します(対応するuriを指定します)
$server = new SoapServer(null,array("uri"=>"soapService.php" ) );
$server -> setClass("Calculator");
$server ->
関数加算($num1,$num2) {
$result = $num1+$num2 ; U 「{$ num1} と {$ num2}」を返します。結果は「$ Result」です。そう理解すれば、このDEMOも正解です。
ただし、サーバーがそれがどの言語で書かれているかを知らない場合。 SoapClient を使用して通信する方法は?は次のとおりです:
$soap = new SoapClient("http://www.XXX.com/ipcam/soapservice/math.wsdl");
$result1 = $soap->addition (200, 160); $result1;

相手が追加メソッドを持ち、パラメータの形式も一貫している限り同じ

wsdl が必要
クライアントは次のとおりです:
$soap = new SoapClient("http://www. XXX.com/ipcam/soapservice/math.wsdl");
$result1 = $soap->addition ( 200, 160 );
echo $result1;

サードパーティは WSDL を提供しません。 SoapClientでも使えるのでしょうか?

同様に、相手が追加メソッドを持っていて、パラメーターの形式もそれに準拠している限り

PHPのSoapClientメソッド通信以外に、HTTPリクエストを直接使用して通信を完了することはできますか?
注: SOAP メッセージの構造はサードパーティによって提供されます。サードパーティからフィードバックされる情報も SOAP 情報構造です。

SOAP メッセージ構造を HTTP リクエストに追加します

xmlns:soap="http://www.w3.org/2001/12/soap-エンベロープ"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

...
...

<ソープ:ボディ>
<ソープ:フォールト>

.net の例があると言いませんでしたか?投稿して見てください


rreee
変数の値を取得する関数は投稿しません。長すぎるので投稿できません。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。