我是Magento的新手我尝试使用带有父类别ID的Magento SOAP API调用类别级别。我使用了以下代码:
<?php
$proxy = new SoapClient('http://domain/index.php/api/soap/?wsdl');
$session = $proxy->login('user', 'password');
$result = $proxy->call($session,'catalog_category.level');
echo json_encode($result);
?>
对于上述代码&#34;默认类别&#34;细节即将到来,我尝试使用以下代码调用其他类别:
$result = $proxy->call($session,'catalog_category.level',12);
这不起作用:
$arguments = array( 'parentCategory' => 12);
$result = $proxy->call($session,'catalog_category.level',$arguments);
这也行不通:
然后我尝试使用以下代码调用类别树:
<?php
$proxy = new SoapClient('http://domain/index.php/api/soap/?wsdl');
$session = $proxy->login('user', 'password');
$result = $proxy->call($session,'catalog_category.tree');
echo json_encode($result);
?>
它显示了整个类别树,因此它意味着API正在运行,但每当我尝试传递参数时,它都显示服务器未找到错误。
任何人都可以告诉我如何通过请求传递参数。
答案 0 :(得分:1)
您需要将其称为
$proxy->call($sessionId, 'category.level', array(null, null, 12));
有关函数检查类
的更多信息Mage_Catalog_Model_Category_Api
function level($website = null, $store = null, $categoryId = null)
如果你想传递特定的网站和商店,你可以传递它而不是空参数。
答案 1 :(得分:0)
我设法使用soapv2获得输出。但是与soapv1相比它很慢,但它提供了所需的输出。我用来传递参数的代码如下所示。
<script src="https://maps.googleapis.com/maps/api/js?signed_in=true&libraries=places"></script>
<div id="map"></div>
<pre id="output"></pre>