我在嘗試向API進行身份驗證時使用PECL OAuth。使用PHP的PECL OAUTH的OAUTH - 使用方法getRequestToken()時不能使用POST?
示例代碼:
<?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);
}
?>
他們提供的說明書(http://developer.lovefilm.com/ - 登記REQ)說我應該發佈類似於下面的一個的請求:
POST /的OAuth/request_token HTTP/1.1 主機:openapi.lovefilm.com 授權:OAuth的 oauth_callback = 「HTTP%3A%2F%2Fyour-service.com%2Fsuccess」, oauth_consumer_key = 「2blu7svnhwkzw29zg7cwkydn」, 非統組織th_nonce = 「5f38dbc02a97567965f14d」, oauth_signature = 「sPSVmqN%2FXu9k0wlZxF0PqPZwYGo%3D」, oauth_signature_method = 「HMAC-SHA1」, oauth_timestamp = 「1278499295」, oauth_version = 「1.0」
然而,當我使用的方法:
$oauth->setAuthType(OAUTH_AUTH_TYPE_AUTHORIZATION);
生成的請求始終爲GET。
任何人都可以幫忙嗎?
感謝,
本
我查找了SPEC: – 2010-11-11 12:52:44
'服務提供者文檔指定了此請求的HTTP方法,並且HTTP POST是推薦的。 ' – 2010-11-11 12:53:53
^^從Oauth規範請求令牌。 (在側面注意,當在此框中輸入時,它似乎按'返回'提交)。多煩人! – 2010-11-11 12:54:50