【问题标题】:How to use twitter Oauth get request in php and zend framework to retrieve some user data如何在php和zend框架中使用twitter Oauth获取请求来检索一些用户数据
【发布时间】:2016-09-20 11:56:09
【问题描述】:

我在使用 twitter oauth 来获取一些用户数据时遇到了一个小问题。

// TWITTER APP KEYS
    $consumer_key = 'some data';
    $consumer_secret = 'some data';

    // 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'];

    $connection = new TwitterOAuth($consumer_key, $consumer_secret, $accessToken, $secretToken);
    $connection->get("users/search");
    $content = $connection->get("account/verify_credentials");
    $media1 = $connection->upload('media/upload', [
        'media' => $this->session->image['generatedAbs']
    ]);
    $parameters = [
        'media_id' => implode(',', [
            $media1->media_id_string
        ])
    ];
    $result = $connection->post('account/update_profile_banner', $parameters);

现在我想检索一些信息,例如连接用户的姓名和姓氏、他的个人资料图片链接、电子邮件地址和他的位置(如果可能的话) 我阅读了官方的twitter dev documentation 并没有找到如何在我的方法中使用它的方法,我尝试使用这种方式调试我的控制器

$connection = new TwitterOAuth($consumer_key, $consumer_secret, $accessToken, $secretToken);
    $connection->get("https://api.twitter.com/1.1/users/profile_banner.json?screen_name=twitterapi");
    $result = json_decode($connection);
    // debug the returned result 
    Zend_Debug::dump($result,$label="debug gass" , $echo= true);

【问题讨论】:

    标签: php zend-framework twitter oauth controller


    【解决方案1】:

    所以使用 php 和 Twitter Oauth 从 twitter 检索信息非常简单,让我列举一下步骤

    1) 获取 oauth_token 和 oauth_verifier(问题中明确说明了步骤

    2) 有趣的部分现在是 :D ,您需要将以下内容复制粘贴到回调页面的控制器中:

    $connection = new TwitterOAuth($consumer_key, $consumer_secret, $accessToken, $secretToken);
    $content = $connection->get("account/verify_credentials");
    

    现在你真的已经完成了一切,只需调试结果:D

    Zend_Debug::dump($content->profile_image_url , $label = "achref gassoumi", $echo = true);
    

    ps:因为我正在工作,所以我使用了 zend 调试器,如果您正在使用其他框架或纯 php,只需回显以下结果,例如:

    echo $credentials->screen_name;
    echo $credentials->profile_image_url ;
    echo $credentials->location;
    echo $credentials->profile_background_image_url;
    

    要检索您可能需要的其他信息,请访问GET account/verify_credentials 的官方 Twitter Oauth 文档。

    【讨论】:

      猜你喜欢
      • 2013-09-26
      • 2011-01-11
      • 1970-01-01
      • 2013-09-01
      • 2013-01-30
      • 1970-01-01
      • 2017-08-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多