2016-10-05 67 views
0

所以我就開始建立類似的Magento的1.7.0.2 CE的SOAP API的包裝類按照指示hereMagento的API表示,「看起來我們有沒有XML文檔」但我得到有效的XML

<?php 
    class magSoap 
    { 
     private $client; 
     private $session; 

     function __construct() 
     { 
      $this->client = new SoapClient('http://localhost:7655/magento1702CE/index.php/api/soap/?wsdl'); 
      var_dump($this->client); 
      file_put_contents("xml.txt",file_get_contents("http://localhost:7655/magento1702CE/index.php/api/soap/?wsdl")); 
      $this->session = $this->client->login('test', '1234567890'); 

      echo "hello"; 
     } 

     function test() 
     { 
      var_dump($this->client->call($this->session, 'sales_order.list')); 
     } 
    } 

?> 

當我運行下面的代碼

$tester = new magSoap(); 
$tester->test(); 

我得到以下

error

google搜索錯誤我一直看到的答案是,我得到無效的XML,所以我瀏覽到我的SoapClienti didn't see anything wrong使用的URL。然後我創建了一個file_put_contents線,所以我可以輸出的XML爲text file和使用this WSDL Analyzer但不顯示我的任何錯誤

report

的SOAP登錄是考驗,關鍵是1234567890,則SOAP角色完全訪問權限,我已禁用「自動重定向到基本URL」,在WAMP服務器中啓用php_soap,PHP版本爲5.6.25。

爲什麼這個代碼仍然不會工作?

回答

0

我與Magento的一個集成花了很多時間..

在我來說,我發現我的電話的SOAP響應有一些特殊的HTML字符,然後認爲SOAP是不一個XML響應。

幫助我的是在soap調用中加入try-catch,並使用soap方法__getRequest()和__getResponse()來查看發生了什麼。

希望它能幫助:)好歹

相關問題