2014-07-22 3 views
0

비누에 대한 초심자 질문이 있습니다. 나는 비누 웹 서비스에서 데이터를 얻기 위해 노력하고 내가 내 브라우저에 URL을 입력하면비누 웹 서비스 데이터를 얻는 방법

https://project/services/productLog?wsdl 

같은 공급 업체에서 제공하는 링크를 가지고, 내가 반환 비누 데이터의 무리를 얻었다. PHP를 사용하여 반환 된 데이터를 얻는 방법을 궁금 해서요.

반환 된 데이터는 도움을

같은
...more.. 

<xs:complexType name="getProduct"> 
    <xs:sequence> 
    <xs:element minOccurs="0" name="id" type="xs:dateTime"/> 
</xs:sequence> 

</xs:complexType> 
    <xs:complexType name="getProductOwner"> 
    <xs:sequence> 
    <xs:element minOccurs="0" name="return" type="tns:getID"/> 
    </xs:sequence> 
</xs:complexType> 

...more 

감사합니다.

+1

컬을 사용하여 데이터를 가져올 수 있습니다. –

+0

SOAP 처음에는 약간 까다로울 수 있습니다. PHP는이를위한 도구를 가지고 있습니다. 쉬운 자습서를 참조하십시오 : http://www.vankouteren.eu/blog/2009/03/simple-php-soap-example/ – Stefan

답변

1

... 시작하기 전에 the official documentation을 확인하는 좋은 생각이 될뿐만 아니라, 몇 가지 같은 것입니다 : PHP의 사이트는 점에서 좋은 정보를 가지고 SOAP 작동 방식에 대한 정보.

그렇다면 첫 번째로 고려해야 할 것은 웹 서비스의 WSDL이라는 사실입니다. 이것은 웹 서비스가 제공하는 메소드와이를 수행하는 데 필요한 매개 변수를 지정하는 계약과 동일합니다.

wsdl을 사용하면 특정 메소드를 호출하는 데 사용할 수있는 SoapClient 인스턴스를 생성 할 수 있습니다. 클라이언트 자체는 동적 객체이며 WSDL에 지정된 동일한 메소드로 자동 생성됩니다.

이것은 웹 서비스에서 "getProduct"라는 방법을 실행하려는 경우, 그것은 걸릴 것 모든 인스턴스에있을 그것을 위해 SoapClient 다음>() getProduct를 $ yourSoapClientInstance-를 부를 것이다 것을 의미한다.

this 웹 서비스의 메소드를 사용한다고 가정 해보십시오. 이 서비스는 "TodaysDilbert"와 "DailyDilbert"의 두 가지 방법을 제공합니다. 이렇게하면이처럼 간단 할 것이다 :

<?php 
try { 

    $wsdl = "http://www.gcomputer.net/webservices/dilbert.asmx?wsdl" 
    $soapClient = new SoapClient($wsdl); 

    $response = $soapClient->TodaysDilbert(); 

    print "<pre>" . print_r($response, true) . "</pre>"; 

} catch (SoapFault $f) { 
    // Your exception handling 
} 
?> 

당신은 SoapClient 방법을 excecuting로부터의 응답이 복잡한 구조 인 경우, 귀하의 반환 값은 전체 응답의 구조를 포함하는 stdClass 객체가 될 것이라는 점을주의해야한다.

희망이 도움이됩니다.

1

표시되는 데이터는 실제 WSDL 파일입니다. 웹 서비스에 요청하려면 웹 서비스 클라이언트를 사용해야합니다. SOAP는 뒷면에 매우 고통 오프 시작할 때

http://php.net/manual/en/class.soapclient.php

관련 문제