Bir API kimlik doğrulaması için çalışırken ben PECL OAuth kullanıyorum.
Örnek Kod:
<?php
$requestUri = 'http://openapi.lovefilm.com/oauth/request';
$consumerKey = 'MYCONSUMERKEY';
$consumerSecret = 'MYSECRET';
$oauth = new OAuth($consumerKey, $consumerSecret);
$oauth->setAuthType(OAUTH_AUTH_TYPE_AUTHORIZATION);
$oauth->setVersion('1.0');
$oauth->setTimestamp(mktime());
$oauth->enableDebug();
try
{
$req = $oauth->getRequestToken($requestUri, 'oob');
var_dump($req);
}
catch(OAuthException $e)
{
print '<pre>';
var_dump($e);
var_dump($oauth->debugInfo);
}
?>
Sağladıkları spesifikasyonu (http://developer.lovefilm.com/ - kaydı req) aşağıda benzer bir istek POST gerektiğini söylüyor:
POST /oauth/request_token HTTP/1.1 Host: openapi.lovefilm.com Authorization: OAuth oauth_callback="http%3A%2F%2Fyour-service.com%2Fsuccess", oauth_consumer_key="2blu7svnhwkzw29zg7cwkydn", oauth_nonce="5f38dbc02a97567965f14d", oauth_signature="sPSVmqN%2FXu9k0wlZxF0PqPZwYGo%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1278499295", oauth_version="1.0"
Ben yöntemini kullandığınızda Ancak zaman:
$oauth->setAuthType(OAUTH_AUTH_TYPE_AUTHORIZATION);
Oluşturulan istek her zaman bir GET.
Herkes yardımcı olabilir?
Teşekkürler,
Ben