Twitter API应用程序auth仅返回禁止

时间:2013-03-19 13:42:52

标签: php twitter twitter-oauth

我正在尝试了解如何将oAuth2与twitter应用程序一起使用auth,这样我就可以在我的网站上显示一个Feed,但我仍然坚持使用令牌获取步骤。我可能做得不对,我根本无法理解oAuth,所以这是我的代码,你能告诉我我做错了吗?

//Expired, request a bearer access token
define('TWITTER_CONSUMER_KEY', 'xyz');
define('TWITTER_CONSUMER_SECRET', 'abc');
$encodedAccessToken = base64_encode(TWITTER_CONSUMER_KEY.':'.TWITTER_CONSUMER_SECRET);

$options = array(
    'http' => array(
        'method' => 'POST',
        'header' => 'Authorization: Basic '.$encodedAccessToken."\nContent-Type: application/x-www-form-urlencoded;charset=UTF-8",
        'content' => 'grant_type=client_credentials',
        'protocol_version' => 1.1,
    ),
);
$context  = stream_context_create($opts);
$result = file_get_contents('https://api.twitter.com/oauth2/token', false, $context);
var_dump($result);

然后我不断收到403错误:

  

警告:file_get_contents(https://api.twitter.com/oauth2/token)   [function.file-get-contents]:无法打开流:HTTP请求   失败! HTTP / 1.0 403禁止进入......

1 个答案:

答案 0 :(得分:0)

好的,作为答案:)

您需要将$options,而不是未定义的$opts传递给stream_context_create