使用TwitterOAuth无法正常登录

时间:2015-09-08 11:06:14

标签: php twitter-oauth

我需要让用户授权应用,所以我需要他们的访问权限。我正在使用PHP和图书馆TwitterOAuth。按照说明操作,但我没有被重定向到任何地方,即使我将$ URL复制并粘贴到浏览器中也能正常工作。这是我的完整代码:

更新代码

require "twitteroauth/autoload.php";

use Abraham\TwitterOAuth\TwitterOAuth;

if (!isset($_SESSION['oauth_token'])) {
    $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET);
    $request_token = $connection->oauth('oauth/request_token', array('oauth_callback' => OAUTH_CALLBACK));
    $_SESSION['oauth_token'] = $token = $request_token['oauth_token'];
    $_SESSION['oauth_token_secret'] = $request_token['oauth_token_secret'];
    switch ($connection->getLastHttpCode()) {
        case 200:
            $url = $connection->url('oauth/authorize', array('oauth_token' => $token));
            break;
        default:
            $error = 'Could not connect to Twitter. Refresh the page or try again later.';
    }    

} else {
    $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);
    try {
        $access_token = $connection->oauth2("oauth/access_token", array("oauth_verifier" => $_REQUEST['oauth_verifier']));
        } catch (Exception $e) {
        echo $e;
    }

    $content = $connection->get('account/verify_credentials');

    var_dump($content);

    echo json_encode($access_token);
}

所以,我加载脚本,这是我的输出:

  

object(stdClass)#7(1){[" errors"] => array(1){[0] => object(stdClass)#8(2){[" code"] => int(89)[" message"] => string(25)"令牌无效或过期。" } null}

我不知道为什么它不起作用,非常感谢帮助!

阿迪

1 个答案:

答案 0 :(得分:1)

评论var_dump($access_token);并且您不会得到第二个错误块。

在重定向之前打印或回显某些内容(即设置标题)时会出现此错误。