【问题标题】:twitter api 1.1 php oauth using abrahams librarytwitter api 1.1 php oauth 使用 abrahams 库
【发布时间】:2015-06-21 09:01:12
【问题描述】:

我正在为 twitter api v 1.1 使用 abrahams php 库。 我的代码:

(index.php)

 /LOADING LIBRARY

require "twitteroauth/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;

//TWITTER APP KEYS
$consumer_key = 'MY CONSUMER KEY';
$consumer_secret = 'MY CONSUMER SECRET';

//CONNECTION TO THE TWITTER APP TO ASK FOR A REQUEST TOKEN
$connection = new TwitterOAuth($consumer_key, $consumer_secret);
$request_token = $connection->oauth("oauth/request_token", array("oauth_callback" => "callbackurl"));


//callback is set to where the rest of the script is

//TAKING THE OAUTH TOKEN AND THE TOKEN SECRET AND PUTTING THEM IN COOKIES (NEEDED IN THE NEXT SCRIPT)
$oauth_token=$request_token['oauth_token'];
$token_secret=$request_token['oauth_token_secret'];
setcookie("token_secret", " ", time()-3600);
setcookie("token_secret", $token_secret, time()+60*10);
setcookie("oauth_token", " ", time()-3600);
setcookie("oauth_token", $oauth_token, time()+60*10);

//GETTING THE URL FOR ASKING TWITTER TO AUTHORIZE THE APP WITH THE OAUTH TOKEN
$url = $connection->url("oauth/authorize", array("oauth_token" => $oauth_token));

//REDIRECTING TO THE URL
header('Location: ' . $url); 

回调网址:

/**
 * users gets redirected here from twitter (if user allowed you app)
 * you can specify this url in https://dev.twitter.com/ and in the previous script
 */ 

//LOADING LIBRARY
require "twitteroauth/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;

//TWITTER APP KEYS
$consumer_key = 'MY CONSUMER KEY';
$consumer_secret = 'MY CONSUMER SECRET';

//GETTING ALL THE TOKEN NEEDED
$oauth_verifier = $_GET['oauth_verifier'];
$token_secret = $_COOKIE['token_secret'];
$oauth_token = $_COOKIE['oauth_token'];

//EXCHANGING THE TOKENS FOR OAUTH TOKEN AND TOKEN SECRET
$connection = new TwitterOAuth($consumer_key, $consumer_secret, $oauth_token, $token_secret);
$access_token = $connection->oauth("oauth/access_token", array("oauth_verifier" => $oauth_verifier));
$accessToken=$access_token['oauth_token'];
$secretToken=$access_token['oauth_token_secret'];

//DISPLAY THE TOKENS
echo "<b>Access Token : </b>".$accessToken."<br />";
echo "<b>Secret Token : </b>".$secretToken."<br />";

$statues = $connection->get("statuses/home_timeline", array("count" => 25, "exclude_replies" => true));
echo '<pre>';
 var_dump($statues);
echo '</pre>';

当我运行 index.php 时,我被重定向到 Twitter 授权页面。当我授权应用程序时,访问令牌和秘密令牌会打印在屏幕上,但出现错误:“令牌无效或过期”

我到处搜索,我不明白我做错了什么......

请帮忙!

【问题讨论】:

    标签: php twitter-oauth


    【解决方案1】:

    尝试仅应用程序身份验证:

    https://dev.twitter.com/oauth/application-only

    【讨论】:

    • 对我来说不够好...我想制作一个可以代表用户关注和发推文的应用
    猜你喜欢
    • 2023-03-09
    • 2014-01-14
    • 2012-08-19
    • 1970-01-01
    • 1970-01-01
    • 2013-02-23
    • 2015-05-26
    • 2017-06-01
    • 1970-01-01
    相关资源
    最近更新 更多