2016-12-01 4 views
0

Я пытаюсь получить доступ к SOAP API с помощью soapClient(), но я застрял с ошибкой ниже.PHP: SOAP-ERROR: Parsing WSDL

SoapFault Object 
(
    [message:protected] => SOAP-ERROR: Parsing WSDL: No element with name '10100/Processes/OrderView/OrderView_v1_0?wsdl' 
    [string:Exception:private] => 
    [code:protected] => 0 
    [file:protected] => C:\xampp\htdocs\api\soap\client.php 
    [line:protected] => 37 
    [trace:Exception:private] => Array 
     (
      [0] => Array 
       (
        [file] => C:\xampp\htdocs\api\soap\client.php 
        [line] => 37 
        [function] => SoapClient 
        [class] => SoapClient 
        [type] => -> 
        [args] => Array 
         (
          [0] => https://example.com:443/orders/v1/orderview?wsdl 
          [1] => Array 
           (
            [trace] => 1 
            [stream_context] => Resource id #4 
            [cache_wsdl] => 0 
           ) 

         ) 

       ) 

     ) 

    [previous:Exception:private] => 
    [faultstring] => SOAP-ERROR: Parsing WSDL: No element with name '10100/Processes/OrderView/OrderView_v1_0?wsdl' 
    [faultcode] => WSDL 
) 

Ниже мой код:

$header = 'Authorization:'.$tokenType.' '.$accessToken; 
$streamContext = array('http' => array("header" => $header , 'user_agent' => 'PHPSoapClient')); 
$streamContext['ssl'] = array(
    "verify_peer" => false, 
    "verify_peer_name" => false, 
    "allow_self_signed" => false 
); 
try{ 
    $client = new SoapClient('https://example.com:443/orders/v1/orderview?wsdl', array(
           "trace" => 1,     
           "stream_context" => stream_context_create($streamContext), 
           'cache_wsdl' => WSDL_CACHE_NONE 
          )); 
    var_dump($client->__getFunctions()); 
    exit; 

С php_curl() он работает нормально и получить ответ, но получает сообщение об ошибке при попытке соединиться с SoapClient.

ответ

0

Что делает строка 37 из C: \ xampp \ htdocs \ api \ soap \ client.php делать? Вероятно, это не проблема, но это может помочь понять сообщение об ошибке.

Работает ли оно, когда вы удаляете параметр stream_context из массива аргументов?

+0

Линия № 37 является функцией soapClient(). мы попробовали без stream_context, все еще получая такую ​​же проблему –