2013-12-13 2 views
0

아주 간단한 테스트 요청을합니다.간단한 PHP 비누 요청

다음
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:web="http://localhost/webshop"> 
    <soap:Header/> 
    <soap:Body> 
     <web:TestRequest/> 
    </soap:Body> 
</soap:Envelope> 

내 요청한다 :

$uri = '...'; 
$login = '...'; 
$pass = '...'; 
try{ 
$client = new SoapClient($uri, Array('login' => $login, 'password' => $pass)); 
}catch(SoapFault $exception){ 
$errors[] = 'Error: '.$exception; 
} 
//print_r($errors); //empty 


if($client){ 
    $param = array(); 
    //var_dump($client); 
    //var_dump($client->__getFunctions()); 
    $result = $client->__doRequest('TestRequest', $param); 
    //$result = $client->TestRequest(); 
    var_dump($result); //return NULL 
    echo "<br>"; 
    var_dump("REQUEST=", $client->__getLastRequest()); //return string(7) "REQUEST" NULL 
    var_dump("RESPONSE=", $client->__getLastResponse());//return string(8) "RESPONSE" NULL 
} 

는 그것이 반환 NULL이 있다고 확인되어 내 문서가있다? 아니면 뭔가 잘못 했어!?

감사합니다.

답변

0

__doRequest()에 조치 매개 변수가 누락되었습니다. here

이어야한다 ..

$result = $client->__doRequest('web:TestRequest', $param, $action, $version); 
                  ----^--- ----^---- 
+0

죄송를 참조하십시오? 그러나 나는 정말로 이해하지 못합니다. 액션 매개 변수에 무엇을 추가해야합니까? – glazsasha

+0

'$ result = $ client -> __ doRequest ('web : TestRequest', "", "", "0,);와 같이 그냥 넘겨 준다. –