1

我正在使用 Magento SOAP api (v2) 开始检索新订单等。

通过在服务器上运行此代码(通过 url),我可以显示数组结果,但是有没有办法可以将响应显示为 xml?

<?php
 $proxy = new SoapClient('http://www.MAGENTO.co.uk/api/v2_soap/?wsdl'); 
$sessionId = $proxy->login('user', 'password'); 

$result = $proxy->salesOrderList($sessionId);
var_dump($result);
?>
4

1 回答 1

7

是的,您可以,我将在下面向您展示,但请记住,SOAP API 的目的是将所有 XML 内容抽象出来,让您处理编程系统(在本例中为 PHP)的本机对象。

PHP 的本机 SOAP 客户端实现具有调试方法,可让您查看最后一次发出的 soap 请求的请求和响应。您需要使用该trace选项实例化您的客户端对象。

$proxy = new SoapClient('http://www.MAGENTO.co.uk/api/v2_soap/?wsdl', array('trace' => 1)); 

然后你应该能够做这样的事情

//could echo as well, I always `var_dump` first in case of unexpected results
var_dump($proxy->__getLastRequestHeaders());

var_dump($proxy->__getLastRequest());

var_dump($proxy->__getLastResponseHeaders());

var_dump($proxy->__getLastResponse());

__getLastResponse方法应返回原始 SOAP XML。

于 2013-01-29T21:30:06.393 回答