【问题标题】:Get user email afer whitelist PHP在白名单 PHP 之后获取用户电子邮件
【发布时间】:2016-03-31 23:48:12
【问题描述】:

我正在使用 PHP Twitter 登录系统,并且我已请求将我的 Twitter 应用程序列入 Twitter 白名单,以便当用户在我的网站上注册 Twitter 时,我可以收到来自用户的电子邮件。

我的应用程序已成功列入白名单,但我没有找到任何使用 PHP 代码获取电子邮件的教程。

index.php中有一段代码: //变量del usuario

        $tw_name        = $_SESSION['request_vars']['screen_name'];
        $tw_id          = $_SESSION['request_vars']['user_id'];
        $oauth_key      = $_SESSION['request_vars']['oauth_token'];
        $oauth_secret_key = $_SESSION['request_vars']['oauth_token_secret'];

        $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $oauth_key, $oauth_secret_key);
        $my_data = $connection->get('users/show', array('screen_name' => $tw_name, 'user_id'=> $tw_id));
        $my_tweets = $connection->get('statuses/user_timeline', array('screen_name' => $screen_name, 'count' => 10));       
        $my_email = $connection->get('account/verify_credentials', array('screen_name' => $tw_name, 'user_id'=> $tw_id,'include_email'=>true));

echo '<strong>Name:</strong> '.$my_data->name.
        '<br><strong>Date: </strong> ' .$my_data->created_at.
        '<br><strong>Description:</strong> ' .$my_data->description.
        '<br><strong>Location:</strong> ' .$my_data->location.
        '</br><strong>Lenguage:</strong> '.$my_data->lang.'<br>';
        echo $my_email->email;

我可以看到姓名、日期等,但我不能使用用户电子邮件,帮助

【问题讨论】:

  • 你检查过 twitter API 吗?我猜它不会返回用户电子邮件。

标签: php email twitter


【解决方案1】:

转储$my_email的内容是什么?在 twitter 文档中,这可能是错误或描述的行为:

"当设置为 true 时,电子邮件将在用户对象中作为 细绳。如果用户的帐户中没有电子邮件地址, 或者如果邮箱地址未经验证,则返回 null。”

可能是这样吗?

如果没有,您可以尝试这样做:

$my_email = $connection->get("account/verify_credentials", ['include_entities' => true, 'skip_status' => true, 'include_email' => true]);

或者简单地说:

get("account/verify_credentials", ['include_email' => true]);

使用纯布尔值而不是字符串,在这里找到:https://github.com/abraham/twitteroauth/issues/364 并阅读官方文档:https://dev.twitter.com/rest/reference/get/account/verify_credentials 这是有道理的。

如果这不起作用(它应该),在其他一些地方,他们只使用:

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

(http://code.runnable.com/UnUm0Nx6Lu1MAAAY/how-to-use-twitter-oauth-in-php-web-application-for-twitteroauth)

希望对你有帮助!

【讨论】:

  • 欢迎您!将问题标记为已解决(检查答案的勾号),如果回答对您有帮助,请点赞;)
猜你喜欢
  • 2016-06-07
  • 2012-03-17
  • 2020-06-07
  • 2016-12-16
  • 2013-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多