您好我正在使用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用户在后端拥有完全权限。 但它仍然无法正常工作。请一些人帮我找到解决方案。
答案 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);
希望有所帮助:)
此致