Я пытаюсь подключиться к api discogs.com через Zend_Oauth как часть пользовательского модуля Magento.
Описание API Discogs здесь:
доступ
oauth
Я следил за подробностями дляиспользуя Zend Oauth здесь: введение
Предлагаемый код выглядит следующим образом ...
(я настроил тестовую учетную запись на Discogs, так что ключ и секрет здесьПравильно и живо и может быть проверено.)
$config = array(
'callbackUrl' => 'http://www.example-discogs-app.co.uk',
'siteUrl' => 'http://api.discogs.com/oauth',
'consumerKey' => 'qvJGTkWsbVMGZGYCHCrQ',
'consumerSecret' => 'iBMnIrhFzoHjqaiVbkhhrmipzcaBwBCc'
);
$consumer = new Zend_Oauth_Consumer($config);
// fetch a request token
$token = $consumer->getRequestToken();
// persist the token to storage
$_SESSION['DISCOGS_REQUEST_TOKEN'] = serialize($token);
// redirect the user
$consumer->redirect();
Я получаю токен запроса и перенаправляем на: api.discogs.com/oauth/authorize?oauth_token=xyzrequesttoken
При этом отображается:
"{" message ":" Запрашиваемый ресурс не найден. "}"
Примечание: когда я запускаю тот же код для Twitter API Oauth ссоответствующие данные ключа учетной записи он работает и перенаправляет в твиттер для подтверждения доступа, как и должно.
Я пробовал различные настройки $ config безуспешно, например requestScheme, requestMethod,.
Я понял этоможет быть связано с необходимыми заголовками, поэтому я также попытался заменить $ consumer-> redirect ();со следующим ... ($ token извлекается из ответа $ token выше)
$client = new Zend_Http_Client();
$client->setHeaders('Content-Type: application/json');
$client->setHeaders('User-Agent: +Xyz');
$client->setUri('http://api.discogs.com/oauth/authorize?oauth_token='.$token);
$client->setMethod(Zend_Http_Client::POST);
$response = $client->request();
Я получаю такой же ответ:
"{" message ":" Theзапрашиваемый ресурс не найден. "}"
Любая помощь будет принята с благодарностью.