从 yii2 中的 Twitter 登录获取用户的电子邮件

Get user's email from twitter login in yii2

我可以在使用 google、facebook 和 vkontakte 登录时成功收到用户的电子邮件。 默认情况下,Twitter 不允许获取用户的电子邮件。 在请求后我得到了这个许可并且在我的 Twitter 应用程序中我有 请求用户的电子邮件地址 已选中。

但是在结果数组中我得到了很多数据,包括推特、用户名、时区等,除了电子邮件。 可能是什么问题?

此用户之前是否在您的系统中进行过身份验证? official docs 声明:

Note

Your app will need to regenerate the user access tokens for previously authenticated users to access their email address.

所以也许这就是导致问题的原因。否则,如果 include_email 设置为 true.

,您应该会收到电子邮件地址

在Yii2中还没有实现。它可能很快就会被添加。现在无法使用默认配置发送 twitter 参数


return $this->api('account/verify_credentials.json', 'GET');
里面AuthClient,

但必须是
return $this->api('account/verify_credentials.json', 'GET', ['include_email' => 'true']);