我很高兴现在我们可以通过Twitter4J'从用户那里获得一个电子邮件地址。
但是,我的问题是我无法使用带来用户电子邮件的功能。 我的服务器(基于Spring)一直在使用Twitter4J和#maven依赖'。 我使用Twitter4J的主页(http://twitter4j.org/en/index.html)中描述的方式:
<dependencies>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>[4.0,)</version>
</dependency>
...
</dependencies>
然而,这种方式无法带来您的最新功能,甚至使用SNAPSHOT
Build Version&#39;。
我认为这种方式无法带来最近在github上传的最新版本的Twitter4J。
如何在我的应用程序中使用Twitter4J使用getEmail()
函数?
非常感谢任何帮助,提前谢谢。
答案 0 :(得分:6)
首先,您需要从documentation
中将您的应用列入白名单请求用户的电子邮件地址要求您的应用程序被Twitter列入白名单。
如果您获得了权限,则需要设置ConfigurationBuilder
setIncludeEmailEnabled(true)
ConfigurationBuilder builder = new ConfigurationBuilder();
builder.setOAuthConsumerKey(cKey);
builder.setOAuthConsumerSecret(cSecret);
builder.setOAuthAccessToken(accessToken.getToken());
builder.setOAuthAccessTokenSecret(accessToken.getTokenSecret());
builder.setIncludeEmailEnabled(true);
然后,您可以在验证凭据后获取用户邮件
User user = twitter.verifyCredentials();
System.out.print(user.getEmail());
正如Patrick Denny指出的那样,此方法于2016年10月4日在Twitter4j 4.0.5实时
因此,如果您有旧版本并需要收到电子邮件,请升级