网上有很多答案,比如“Twitter没有给出电子邮件地址” - 现在你可以向他们的技术支持部门询问你的应用程序的扩展权利(我得到了它)。 起初,我在客户端使用Twitter做了所有操作(在Android上,使用Fabric的Twitter SDK),所以我收到这样的电子邮件地址:
bTwitterHidden.setCallback(new Callback<TwitterSession>() {
@Override
public void success(Result<TwitterSession> result) {
TwitterSession session = result.data;
twitterLoginUri = new UriConstructor(getSupportFragmentManager()).makeFullURI("/customer/loginTwitter");
if (twitterLoginUri != null) {
TwitterAuthClient authClient = new TwitterAuthClient();
authClient.requestEmail(session, new Callback<String>() {
@Override
public void success(Result<String> result) {
try {
String email = result.data;
//Some actions...
}
} catch (SignatureException | InterruptedException | ExecutionException e) {
//...
}
}
@Override
public void failure(TwitterException exception) {
//...
}
});
}
}
@Override
public void failure(TwitterException exception) {
//...
}
});
但是现在我正在尝试在客户端获取访问令牌,并将其发送到服务器部分,并在那里收到电子邮件。我正在使用Spring Social(但如果有人给我工作代码,我不介意使用别的东西)。我知道如何建立与Twitter的联系:
TransferMessage loginTwitter(@RequestBody String clientToken) {
Twitter twitter = new TwitterTemplate(clientToken);
//TODO
}
但我怎样才能收到用户的电子邮件?