且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

缺少 Twitter4j 身份验证凭据

更新时间:2021-09-09 21:56:37

问题在于以下几行.

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

您正在将配置传递给一个 TwitterFactory 实例,并使用另一个 TwitterFactory 实例来获取 Twitter 实例.

You are passing the configuration to one TwitterFactory instance and using another TwitterFactory instance to get the Twitter instance.

因此,你得到java.lang.IllegalStateException:缺少身份验证凭据

我建议你修改你的代码如下:

I suggest you to modify your code as follows:

    //Twitter Conf.
    ConfigurationBuilder cb = new ConfigurationBuilder();
    cb.setDebugEnabled(true)
            .setOAuthConsumerKey(CONSUMER_KEY)
            .setOAuthConsumerSecret(CONSUMER_SECRET)
            .setOAuthAccessToken(ACCESS_KEY)
            .setOAuthAccessTokenSecret(ACCESS_SECRET);

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

并使用此 twitter 实例.它会起作用.

And use this twitter instance. It will work.