使用twitter4j 3.03寻找Twitter用户的时间表

时间:2013-01-29 12:27:59

标签: twitter twitter4j

我正在尝试使用twitter4j检索Twitter用户的时间线。我能够使用2.6版本执行此操作,但现在我升级到3.03并开始从twitter获得authenticaton错误。

  

401:身份验证凭据(https://dev.twitter.com/pages/auth)   失踪或不正确。确保您已设置有效的消费者   密钥/秘密,访问令牌/秘密和系统时钟是同步的。   消息 - 无法验证您的代码 - 32

这是我检索推特对象的方式

TwitterFactory twitterFactory = new TwitterFactory(
                                                new ConfigurationBuilder().setDebugEnabled(true).
                                                setOAuthConsumerKey(oAuthConsumerKey).
                                                setOAuthConsumerSecret(oAuthConsumerSecret).
                                                setJSONStoreEnabled(true).
                                                build());
twitter = twitterFactory.getInstance();
twitter.setOAuthAccessToken(new AccessToken(accessToken, accessTokenSecret));

当我检索这样的Twitter对象并尝试获得与经过身份验证的用户不同的用户时,我收到了身份验证错误。以下是检索用户的代码:

user = twitter.showUser(userName);

在升级之前,我能够检索具有公共配置文件的任何用户,但现在我无法检索除经过身份验证的用户本身之外的任何用户。我在这里做smtg错了,我是否需要获得用户的许可才能查找他的时间线,我不相信,因为当我使用twitter的oauth工具时,我能够在未获得用户任何许可的情况下检索用户

我使用的是twitter4j 3.03版。

1 个答案:

答案 0 :(得分:1)

显然旧api接受以“@”开头的userNames,而新版本只是抛出这个奇怪的错误。从搜索到的用户名中删除“@”后,所有工作都没有任何问题。