gpt4 book ai didi

php - Twitter OAUTH 返回一个空数组

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:42:13 24 4
gpt4 key购买 nike

我正在处理 Twitter 身份验证,一切似乎都运行良好,直到我到达 getAccessToken,它返回 Array ( [ ] => )

我做了什么:

  1. 第一阶段:

    $connection = new TwitterOAuth('xxxxxxxx','xxxxxxxx');

    $temporary_credentials = $connection->getRequestToken('http://example.com/profile.php?passurl=1');

    $redirect_url = $connection->getAuthorizeURL($temporary_credentials);

    $_COOKIE['oauth_token'] = $temporary_credentials['oauth_token'];

    $_COOKIE['oauth_token_secret'] = $temporary_credentials['oauth_token_secret'];

    header("Location: $redirect_url");
  2. 第二阶段(这是我遇到问题的地方)

    $connection =
    new TwitterOAuth(
    'xxxxxxxxxx',
    'xxxxxxxxxx',
    $_COOKIE['oauth_token'],
    $_COOKIE['oauth_token_secret']
    );
    $token_credentials = $connection->getAccessToken();

我打算将 $token_credentials 值保存在数据库中,但它返回一个空数组:Array ( [ ] => )

我哪里不对?

最佳答案

您是否将“oauth_verifier”传递给 getAccessToken 方法?在您提供的示例代码中,您没有这样做。看看这张图,特别是 D 部分

OAuth Diagram

我过去使用过 twitteroauth,我记得是这样操作的。 (开始第二阶段)

$twitterOauth = new TwitterOAuth($AppId, $twSecret, $_COOKIE['oauth_token'], $_COOKIE['oauth_token_secret']);
$twToken = $twitterOauth->getAccessToken($_REQUEST['oauth_verifier']);

$newTwitterOauth = new TwitterOAuth($AppId, $twSecret, $twToken['oauth_token'], $twToken['oauth_token_secret']);
$response = (array) $newTwitterOauth->get('account/verify_credentials');
var_dump($response);

不过我有几个建议:

  • 与其将该信息存储在 cookie 中,我强烈建议您使用 session 来完成这项工作。
  • 如果您坚持使用 cookie,请使用 setcookie功能。

关于php - Twitter OAUTH 返回一个空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10352377/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com