SOAP 요청을하는 PHP 애플리케이션을 작성하고 있습니다. 때로는 자신의 서버가 최대가 아니거나 문제의 일종을 가지고 있으며, 내 응용 프로그램이 같은 오류로 인해 불면 :SOAP 요청 실패의 오류 처리 방법
Undefined property: stdClass::$getSomethingJSONResult
이 SOAP 요청이 실패 이유의 숫자와 나는 검사 할 수 할 수 있습니다 프로그램이 처리 할 수 있도록 이러한 오류 조건이 있습니다.
PHP에서 사용하는 두 가지 SOAP 함수가 있습니다. 하나는 SOAP 서버에 로그인하고 다른 하나는 soapFunction을 얻기 위해 쿼리를 작성하기위한 것입니다. 난 그냥이 작업을 수행 할 수 있다면
// --------------------- FUNCTIONS -----------------------
function login_soap($username,$password) {
global $soapClient;
$soapURL = "http://SOAPServerSomeplace.asmx?WSDL";
$ns = 'http://microsoft.com/webservices/'; //Namespace of the WS.
$soapParameters = array('userName' => $username, 'password' => $password);
$soapClient = new SoapClient($soapURL);
$header = new SoapHeader($ns,'UserCredentials',$soapParameters,false);
$soapClient->__setSoapHeaders($header);
}
// -------------------------------------------------------
function getSomething($option) {
global $soapClient;
$soapFunctionParameters = array('this' => $option) ;
$soapFunction = "getSomethingJSON" ;
$this_json = $soapClient->$soapFunction($soapFunctionParameters);
$stdClassObject = json_decode($this_json->getSomethingJSONResult);
$this_obj = $stdClassObject->this;
return $this_obj;
}
// -------------------------------------------------------
궁금 : 그들은이 같은 모양
if (login_soap($username,$password)) {
echo "This worked." . "\n";
} else {
echo "This failed." . "\n";
}
또는 getSomething ($ 옵션)와
?SOAP 요청 실패를 시뮬레이트하는 방법을 모르겠지만 SOAP 요청이 실패하면 PHP가 중단 될 것이라고 생각합니다. 이것을 포착해야 PHP를 중단시키지 않아 다른 일을하도록 지시 할 수 있습니다.
첫 번째 관심사는 SOAP 요청이 제대로 작동하는지 확인하는 것입니다. 그런 다음 반환 된 JSON 파일에서 프로그램이 진행되기 전에 필요한 모든 데이터가 있는지 확인하십시오. JSON 파일을 확인해 보았습니다. SOAP 요청에는 포함되지 않았습니다. 감사!