我正在尝试为客户使用magento Rest api。但是当我验证应用程序时,它给了我以下错误。
Invalid auth/bad request (got a 500, expected HTTP/1.1 20X or a redirect)
Service temporary unavailable
我正在尝试获取客户角色的产品集合。
$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml'));
该行代码抛出异常。
任何帮助将不胜感激。
您是否尝试过在请求中添加“接受”标头?我在 Magento API 中遇到了同样的问题,对其进行了测试,发现 PHP OAuth 客户端默认情况下不发送任何接受标头。所以请尝试以下方法:
$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml', 'Accept' => 'application/xml'));
或
$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml', 'Accept' => '*/*'));
您可以在设置客户端时使用以下命令查看有关异常的更多信息:
$oauthClient->enableDebug();
...然后使用以下命令查看调试:
$oauthClient->debugInfo
或
$oauthClient->getLastResponse
其他方法记录在这里:
我用过
$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/json', 'Accept' => '*/*'));
,效果很好。