当我在magento root中运行以下代码时
<?php
$client = new SoapClient('http://localhost/mymagento/index.php/api/v2_soap/index?wsdl=1', array('cache_wsdl' => WSDL_CACHE_NONE));
$session = $client->login('testuser', 'testuser');
$result = $client->salesOrderList($session);
echo"<pre>";
print_r($result);
echo"</pre>";
?>
我收到以下错误
Fatal error: Uncaught SoapFault exception: [4] Resource path is not callable. in /var/www/html/mymagento/sales_order.php:9
Stack trace:
#0 /var/www/html/mymagento/sales_order.php(9): SoapClient->__call('salesOrderList', Array)
#1 /var/www/html/mymagento/sales_order.php(9): SoapClient->salesOrderList('98850601ed8aa6f...')
#2 {main}
thrown in /var/www/html/mymagento/sales_order.php on line 9
但是当我跑步时
$result = $client->salesOrderInfo($session,'100000030');
没有错误。
如何解决这个问题? 请帮忙
答案 0 :(得分:3)
这意味着您正在尝试访问应该无法访问的资源。就像类文件一样。
在我的项目中我收到此错误,一个目录不在正确的位置。请检查您正在创建的目录结构,以覆盖核心文件。或者检查核心文件目录结构是否被错误地打扰了。
答案 1 :(得分:0)
而不是使用localhost
使用本地系统的IP地址。默认IP地址为127.0.0.1。
所以,你的代码应该像我这样:
<?php
$client = new SoapClient('http://127.0.0.1/mymagento/index.php/api/v2_soap/index?wsdl=1', array('cache_wsdl' => WSDL_CACHE_NONE));
$session = $client->login('testuser', 'testuser');
$result = $client->salesOrderList($session);
echo"<pre>";
print_r($result);
echo"</pre>";
?>
试试这个,希望有所帮助!