0

我正在使用 abraham 库在我的网站上使用 twitter 登录。

我已经完成了很多教程,但我不明白为什么永远不会调用回调 url。

文件“login.php”正确显示了 twitter 验证表单。点击“登录”只会重定向到https://api.twitter.com/oauth/authenticate。但是,当我单击“取消”时,它会重定向到指定的回调文件。

我为方法“getRequestToken”提供了一个回调 url,并在 twitter 开发网站的应用程序设置中设置了相同的 url。我已将应用程序访问权限设置为“只读”并选中“允许此应用程序用于使用 Twitter 登录”。

这是我的文件:

登录.php:

<?php
session_start();
include_once("twitter-config.php");

include_once("lib/twitteroauth-master/twitteroauth/twitteroauth.php");


$connection = new TwitterOAuth($CONSUMER_KEY, $CONSUMER_SECRET);
$request_token = $connection->getRequestToken($OAUTH_CALLBACK); //get Request Token


if( $request_token)
{
    $token = $request_token['oauth_token'];
    $_SESSION['request_token'] = $token ;
    $_SESSION['request_token_secret'] = $request_token['oauth_token_secret'];


    switch ($connection->http_code) 
    {
        case 200:
            $url = $connection->getAuthorizeURL($token);
            //redirect to Twitter .
            header('Location: ' . $url); 
            break;
        default:
          print_r($connection->http_info);
            echo "<br/>Connection with twitter Failed<br/><br/> Date du serveur:" . date("M d Y H:i:s", time()) . " <br/> Date de Twitter: " . $connection->http_header['date'];
            break;
    }

}
else //error receiving request token
{
    echo "Error Receiving Request Token";
}
?>

推特-config.php:

<?php

/**
 * @file
 * A single location to store configuration.
 */

$CONSUMER_KEY = 'XXXXXXX';
$CONSUMER_SECRET = 'XXXXXXX';
$OAUTH_CALLBACK = 'https://www.xxxxx.com/preprod/users/twitter-signin/oauth.php';

?>

提前感谢您的帮助。

4

1 回答 1

-1

这是 twitter 开发人员的问题:https ://dev.twitter.com/discussions/21599

于 2013-10-02T19:49:39.400 回答