ホームページ > バックエンド開発 > PHPチュートリアル > SOAP、VersionMismatch が発生し、解決策を探しています

SOAP、VersionMismatch が発生し、解決策を探しています

WBOY
リリース: 2016-06-23 13:51:45
オリジナル
4515 人が閲覧しました

まずコードを投稿してください

<?phpheader("Content-Type: text/html;charset=utf-8");  try{      $client = new SOAPClient(null,        array('location' =>"http://v2.shanxitele.com/service/OutWebService?wsdl",'uri' => "http://127.0.0.1/"));       $servicename = 'OAuth';    $servId = 'xxx';    $secretKey = 'xxx';    $xmlInfo = '<?xml version="1.0" encoding="UTF-8"?><BaseInfo><servId>fc4fa30c444400b701446c540230244e</servId><platform>yixin</platform><type>base</type><redirect_uri>lcoalhost/index.php</redirect_uri></BaseInfo>';     $result = $client->callService($servicename, $servId, $secretKey, $xmlInfo);    var_dump($result);}catch(SOAPFault $e){      echo "Error: ",$e->faultcode,", string: ",$e->faultstring;}  ?>
ログイン後にコピー


エラーコード Error: VersionMismatch、string: Wrong Version

解決してください。


ディスカッション(解決策)への返信

うーん、ルールは守らなきゃいけないよね?

フォローしてください

提供的方法Array(    [0] => callServiceResponse callService(callService $parameters))相关的数据结构Array(    [0] => struct callService { string in0; string in1; string in2; string in3;}    [1] => struct callServiceResponse { string out;})
ログイン後にコピー
ログイン後にコピー

try {			$xml='xml数据';			//地址			$soap = new SoapClient ( "http://mp.vservice.com.cn/service/OutWebService?WSDL" );			//请求参数 根据你的参数调整			$param = array ('userName' => '*****', 'pwd' => '****', 'businessType' => 'SaleHouses', 'xmlContent' => $xml );			//调用服务器端的方法 根据你的方法调整 我这里Import是方法名称			$result = $soap->__soapCall ( 'Import', array ('parameters' => $param ) );			print_r ( $result );		} catch ( SoapFault $e ) {			echo $e->getMessage ();		} catch ( Exception $E ) {			echo $E->getMessage ();		}
ログイン後にコピー
ルールは守らなければなりませんね?


そうですね、私は初心者なので、これまでに Soap を使用したことがありません。完全なコードを投稿してもらえますか?ありがとうございます

フォローしてください

提供的方法Array(    [0] => callServiceResponse callService(callService $parameters))相关的数据结构Array(    [0] => struct callService { string in0; string in1; string in2; string in3;}    [1] => struct callServiceResponse { string out;})
ログイン後にコピー
ログイン後にコピー



これを実行すると出てくる情報はこんな感じです、 stdClass Object ( [out] => )

ユーザー名とパスワードは本物ですか?

あなたのユーザー名とパスワードは本物ですか?



は本物です、

メソッドは与えられましたが、正しいパラメーターをすべて提供することは不可能です
したがって、デバッグは自分でのみ行うことができます

メソッドは与えられましたが、それはすべてのパラメータを指定することは不可能です 正しいパラメータ
したがって、デバッグは自分でのみ行うことができます



1. Web ページの認証 URL インターフェイスを取得します
?インターフェイス アドレス http://v2.shanxitele.com/service/OutWebService? wsdl
?インターフェイス呼び出し元
callService(String serviceName, String servId, String SecretKey, String xmlInfo)
?インターフェイス入力パラメータ
パラメータ名 値
serviceName OAuth
servId サービス番号 ID Taiyuan Telecom=fc4fa30c444400b701446c540230244 e
SecretKey サービス番号の秘密キー Taiyuan Telecom= 96e 79218965eb72c92a549dd5a330112
xmlInfo

xxxフォーム>yixin base
uri
してください。これは本当にわかりません。

りー


りー

ありがとうございます。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート