使用J Twitter获取转推的问题

时间:2011-09-07 23:51:44

标签: java jtwitter

我的代码是:

  for(int i=0;i<list.size();i++){            

        listRetweeters = null;
        tweetId = list.get(i).getId();
        status = twitter.getStatus(tweetId);
        listRetweeters= twitter.getRetweeters(status);
        System.out.println("users RT: ");
        for(int j=0;j<listRetweeters.size();j++)
            System.out.println(listRetweeters.get(j).toString());
   }

我的问题是,在尝试转发推文时,我会返回此错误:

线程“main”中的异常winterwell.jtwitter.TwitterException $ E401:未经授权 HTTP / 1.1 401未经授权 {“errors”:[{“code”:32,“message”:“无法对您进行身份验证”}}} http://api.twitter.com/1/statuses/111580420944044034/retweeted_by.json(匿名)         at winterwell.jtwitter.URLConnectionHttpClient.processError(URLConnectionHttpClient.java:380)         at winterwell.jtwitter.URLConnectionHttpClient.connect(URLConnectionHttpClient.java:199)         at winterwell.jtwitter.URLConnectionHttpClient.getPage(URLConnectionHttpClient.java:240)

感谢您的回复和对不起,我的基本英语XD

1 个答案:

答案 0 :(得分:0)

客户端正在尝试对getRetweeters()调用进行身份验证,并且您正在使用未经身份验证的Twitter对象 - 或者可能是使用无效OAuth令牌的对象。

实际上,现在没有必要对此呼叫进行身份验证。如果您下载最新版本的JTwitter,它将允许此方法使用匿名客户端(使用无参数的Twitter()构造函数创建)。

或者,您可以将OAuthSignpostClient()与有效的访问令牌一起使用。