java - twitter4j 中缺少身份验证凭据

标签 java twitter twitter-oauth twitter4j

我有这个代码

    PrintWriter out = response.getWriter();
    String username="twitterapi";

   ConfigurationBuilder cb = new ConfigurationBuilder();
   cb.setDebugEnabled(true)
    .setOAuthConsumerKey("zRQs******yDLJuQ")
    .setOAuthConsumerSecret("W368******************DsWya56uk")
    .setOAuthAccessToken("124529**************EQ2XAfAQShzSWExwMoOS")
    .setOAuthAccessToken("UiH**********************k6UuCPveirdF");

 TwitterFactory tf = new TwitterFactory(cb.build());
 Twitter twitter = tf.getInstance();

    User user = null; 

         try {
             user = twitter.showUser(username); 
         } catch (TwitterException ex) {
             Logger.getLogger(Twitter_Final.class.getName()).log(Level.SEVERE, null, ex);
         }
    if (user.getStatus() != null) {
       out.println("@" + user.getScreenName() + " - " + user.getDescription());
    } else {
        // protected account
        out.println("@" + user.getScreenName());
    }

但我收到了已知的错误消息“缺少身份验证凭据。有关详细信息,请参阅 http://twitter4j.org/en/configuration.html。”

我在这里读过类似的问题,但我看不出我的代码中的问题出在哪里。可以吗?

最佳答案

问题出在您的 ConfigurationBuilder 中,您设置了两次 OAuthAccessToken 但从未设置过 OAuthAccessTokenSecret:

只需将您的代码更改为:

ConfigurationBuilder cb = new ConfigurationBuilder();
           cb.setDebugEnabled(true)
            .setOAuthConsumerKey(YOUR_KEY)
            .setOAuthConsumerSecret(YOUR_SECRET)
            .setOAuthAccessToken(ACCESS_TOKEN)
            .setOAuthAccessTokenSecret(ACCESS_TOKEN_SECRET);

它会起作用的!

关于java - twitter4j 中缺少身份验证凭据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20889024/

相关文章:

java - Java 中的 IP header

java - IBM Worklight 6.1.0.1 服务器无法在 Windows 8.1 Pro 64 位上启动

Android Twitter 集成 - 卡在登录页面?

mysql - 存储 oauth 和本地身份验证方法的最佳实践?

grails - Grails: token 中的Oauth Twitter用户ID

ios - Ben Gottlieb 的 Twitter+OAuth iOS SDK - 返回 nil 的用户名参数

java - 尝试延长类(class)时遇到麻烦

java - Mac 上的 Selenium Java - 按命令按钮 + 单击//或按鼠标中键

html - 如何使用我自己的 CSS 设置 Twitter 小部件的样式

ios - 通过 ios 8 事件 View Controller 在 Facebook 和 Twitter 上共享