0

標準のSOAPである.netWebサービスがあり、POST/GET機能を追加しました。.netでは、問題なくWebサービスを利用でき、テストPOSTページを使用すると、Webサービスも正常に使用できます。php開発者から、まったく問題ないと思ったWebサービスを使用するように要求されましたが、彼は成功する結果を得ることができません。私はPHPを使用したことがないので、PHP側でさえ使用できるテストプロジェクトはありません。彼がこれまでに使用した最初のWebサービスであるため、彼自身はあまり経験がありません。

だから私の質問は:

1).net開発者として、私は問題の調査を開始する方法にさえ困惑しています。それが私のWebサービスの問題なのか、彼のphpコードの問題なのかわかりません。.netとPOSTが機能するため、彼のコードに何かがあると信じがちですが、phpがわからないため、テストできません。

2)phpが私のサービスを正しく使用できるようにするために必要なタグや何かがありますか?

3)phpとの互換性をチェックするために使用できるツールはありますか?

4)PHPの知識がある人は、自分のコードを調べて、明らかな問題があるかどうかを確認できますか?

解決済み:回答の動作コードを参照してください。

4

4 に答える 4

1
$function = "soapcall"; 
$array =array("Param1" => "parameter1", "Param2" => "parameter2", "Param3" => "parameter3"); 

$client = new SOAPClient( 
'http://url.asmx?WSDL', 
array( 
    'location' => 'url.asmx?WSDL', 
    'trace' => 1, 
    'style' => SOAP_RPC, 
    'use' => SOAP_ENCODED, 
) 
);


$result = $client->__soapCall('soapcall', array("parameters"=>$array));

foreach( $result as $r) 
{   print $r."<br>";    }
于 2012-05-15T22:38:13.163 に答える
0

PHPでのWebサービス呼び出しにはNuSoapを使用しており、非常にうまく機能します。

于 2012-05-15T13:02:47.890 に答える
0

WCFや他のWebサービスとの相互運用性には一定の欠如があります。これはPHPだけでなく、JavaライブラリもWCFWebサービスで機能しないことがよくあります。他の多くのSOの質問に詳細があります-サイドバーを参照してください。

あなたが試すことができる一つのことは、SOAPUI(またはsourceforgeから)があなたのウェブサービスを「インタラクティブに」呼び出すことです。これは彼がウェブサービスを理解するのを助けるはずです。

于 2012-05-15T12:08:02.917 に答える
0

.NETサービスにはhttpエンドポイント(アダプター)が必要です。 https://bugs.php.net/bug.php?id=50698

また、NTLM認証が必要な場合もあります。NTLM認証を使用してWebサービスを呼び出します。

于 2018-01-23T07:46:57.247 に答える