Magento:Soap api无法正常工作

时间:2015-10-21 12:46:41

标签: php api magento soap

您好我正在使用magento vesion 1. 9 我试图用php调用magento soap apiv2。

我使用以下代码。

$proxy = new SoapClient('http://domain/index.php/api/v2_soap/?wsdl=1');
$sessionId = $proxy->login((object)array('username' => 'user', 'apiKey' => 'password'));
$product=$proxy->catalogProductInfo((object)array('sessionId' => $sessionId->result, 'productId' => '27'));

我得到会话ID(我通过打印id来测试它) 但是当我拨打肥皂电话时

$product=$proxy->catalogProductInfo((object)array('sessionId' => $sessionId->result, 'productId' => '27'));

浏览器显示“服务器错误”

api用户在后端拥有完全权限。 但它仍然无法正常工作。请一些人帮我找到解决方案。

1 个答案:

答案 0 :(得分:2)

你的代码看起来有点臃肿。试试这个:

$proxy = new SoapClient('http://domain/index.php/api/v2_soap/?wsdl=1');
$sessionId = $proxy->login("username", "password");
$product = $proxy->catalogProductInfo($sessionId, '27');
print_r($product); // just to see the output

如果您想重新使用代码,我建议以下内容:

$host = "domain.ext"; // replace with your domain name
$username = "username"; // replace with your soap user
$password = "password"; // replace with your user's password
$productId = "27";

$proxy = new SoapClient("http://".$host."/index.php/api/v2_soap/?wsdl=1");
$sessionId = $proxy->login($username, $password);
$product = $proxy->catalogProductInfo($sessionId, $productId);

print_r($product); // just to see the output

如果你想看看还有哪些其他功能可以提供一个很好的提示:

$functions = $proxy->__getFunctions ();
var_dump($functions);

希望有所帮助:)

此致