Reputation: 845
I am trying to use magento rest api for customers. But when i authenticate the application, it gives me following error.
Invalid auth/bad request (got a 500, expected HTTP/1.1 20X or a redirect)
Service temporary unavailable
I am trying to fetch product collection for customer role.
$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml'));
The line of code throws exception.
Any help will be appreciated.
Upvotes: 7
Views: 2537
Reputation: 2298
I've used $oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/json', 'Accept' => '*/*'));
which works fine.
Upvotes: 2
Reputation: 3778
Have you tried adding an "Accept" header to your request? I ran into the same problem with the Magento API, tested it and found that the PHP OAuth client doesn't send any accept header by default. So try the following instead:
$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml', 'Accept' => 'application/xml'));
or
$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml', 'Accept' => '*/*'));
You can view more info about the exception by using the following when you set up the client:
$oauthClient->enableDebug();
...and then looking at the debug with:
$oauthClient->debugInfo
or
$oauthClient->getLastResponse
The other methods are documented here:
http://www.php.net/manual/en/class.oauth.php
Upvotes: 16