2014-07-15 2 views
-1

SOAP 인터페이스를 사용하는 방법을 파악하려고합니다.SoapClient 요청이 데이터를 반환하지 않습니다.

soapUI로 탐색 한 후에 코드를 작성했습니다.

작업 soapUI 요청 :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v22="https://shop.textalk.se/webservice/v22"> 
    <soapenv:Header/> 
    <soapenv:Body> 
     <v22:GetOrders> 
     <Login> 
      <Shop>23946</Shop> 
      <Username>[email protected]</Username> 
      <Password>HIDDEN</Password> 
     </Login> 
     <!--Zero or more repetitions:--> 
     <Orders>44753668</Orders> 
     <Status>All</Status> 

     </v22:GetOrders> 
    </soapenv:Body> 
</soapenv:Envelope> 

비 작업 PHP 요청 :

<?php 

     $wsdl = "https://shop.textalk.se/webservice/v22/?WSDL"; 

     $client = new SoapClient($wsdl, array(
      'Shop'=>'23946', 
      'Username'=>'[email protected]', 
      'Password'=>'HIDDEN', 
      'trace'=>1, 
      'exceptions'=>0)); 

$request = array(
    'GetOrdersResponse' => array(
     'Orders' => '44753668', 
     'Status' => 'All' 
    ), 
); 

     $response = $client->GetOrders($request); 
var_dump($response); 





    echo $response; 


    ?> 

문서가 여기에 있습니다 : 나는 PHP 코드를 실행하면 절대적으로 아무것도

+0

무엇이 문제인가? –

+0

PHP 코드를 실행할 때 아무 일도 일어나지 않습니다. – Charkel

+2

읽어 보셨습니까? http://stackoverflow.com/help/mcve? 이것은 실제로 SoapUI 문제가 아니므로 질문에 태그를 추가하십시오. 귀하의 회사가 바로 이것을 필요로한다면 거기에 도움이 될만한 사람이 있습니까? 다른 어떤 서비스도 php에서 작동하도록 할 수 있습니까? 코드에 추가 로깅을 삽입하여 진행 상황을 파악할 수 있습니까? – SiKing

답변

0

나는 무엇이 잘못되었는지 알아 냈습니다. 나는 별도의 값이 아닌 배열로 로그인 값을 전달해야했습니다. 그것으로 해결되었습니다. 지금은 올바른 데이터를 얻고 있습니다.

<?php 
    $wsdl = "https://shop.textalk.se/webservice/v22/?WSDL"; 

    $client = new SoapClient($wsdl); 

    $request = array(
     'Login' => array(
      'Shop'=>"23946", 
      'Username'=>"[email protected]", 
      'Password'=>"HIDDEN"), 
      'Orders' => "44753668", 
      'Status' => "All"); 

    $response = $client->GetOrders($request); 
    var_dump($response); 
    echo $response; 


?> 
+1

문제가 해결되었습니다. 당신은 올바른 방향으로 포인터를 가지고 있어요! 결국 그것은 문서를 읽는 문제였습니다. – tlenss

0

I를 발생하지 https://shop.textalk.se/webservice/v22/wsdldoc.php

PHP 전문가가 아니지만 아래 코드를 사용해 보셨습니까?

<?php 
    $wsdl = "https://shop.textalk.se/webservice/v22/?WSDL"; 

    $client = new SoapClient($wsdl); 

    $request = array(
       'Shop'=>'23946', 
       'Username'=>'[email protected]', 
       'Password'=>'HIDDEN', 
       'Orders' => '44753668', 
       'Status' => 'All')); 

    $response = $client->GetOrders($request); 
    var_dump($response); 
    echo $response; 
?> 

체크 아웃 좋은 출발점 http://www.vankouteren.eu/blog/2009/03/simple-php-soap-example/

참고이 블로그 게시물 : 코드가 안된입니다!

+0

그 코드는 아무것도 반환하지 않습니다. 나는 전에 많은 튜토리얼을 체크 아웃했다. 로그인을 사용하는 예제가 없습니다 :/ – Charkel

+0

로그인 매개 변수를 배열로 지정하여 작동했습니다. – Charkel

관련 문제