2011-01-24 16 views
1

私はPHP(およびSOAP一般)を使用したSOAPの新機能です。私はSoapClientクラスに問題があります。 4つのパラメータ(リクエスト、場所、アクション、バージョン)が必要ですが、私が使用しようとしているWebサービスに関係するものは本当にわかりません。PHP SOAP SoapClientパラメータ

ここ

http://wiki.agemni.com/Getting_Started/APIs/Agemni_CMS_Synchttp://www.agemni.com/_anet/ADBAccess.asmx?op=getCMSTables

を参照してくださいが私の最高の推測です:

$wsdl = 'http://www.agemni.com/_anet/ADBAccess.asmx?WSDL'; 

$action = 'http://webservice.agemni.com/getCMSTables'; 
$request = 'POST /_anet/ADBAccess.asmx HTTP/1.1 
Host: www.agemni.com 
Content-Type: text/xml; charset=utf-8 
Content-Length: 10000 
SOAPAction: "http://webservice.agemni.com/getCMSTables" 

<?xml version="1.0" encoding="utf-8"?> 
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
    <soap:Body> 
    <getCMSTables xmlns="http://webservice.agemni.com/getCMSTables" /> 
    </soap:Body> 
</soap:Envelope>" 
'; 
$location = 'http://www.agemni.com/_anet/ADBAccess.asmx'; 
$version ='1'; 


$client = new SoapClient($wsdl); 
$response = $client->__doRequest($request, $location, $action, $version); 

私は私のためにこれを行うには誰のために求めていないんだけど、あなたは明確に役立つことができればどのような$アクション、$リクエスト、および$場所が(私は非常に感謝したいと思う$ 1バージョンはちょうどint 1または2)である必要があります。

答えて

1

リクエストの詳細を処理する必要がなく、WSDLファイルがある場合は、これらのパラメータを設定する必要はありません。 WSDLファイルのパスをインスタンス化するだけで、他のすべてが含まれていると考えられます。 http://php.net/manual/en/soapclient.soapclient.php

+0

スウィート:あなただけ

$response = $client->getCMSTables(); 

参照を呼びます!ありがとうございました。この特定のケースでは、私がログインしたことをどのように証明しているかを書類で一目瞭然に知ることはできません。 – timmyc

+0

あなたはAgemniの文書を意味しますか?あなたがどこにログインしたことを証明しますか?私はこれがあなたの友人だと思う:http://wiki.agemni.com/Getting_Started/APIs/Agemni_CMS_Sync#agLogin –

+0

確かにそうです。あなたの助けをもう一度ありがとう。 – timmyc