1

我正在使用 twitter4j 并在https://dev.twitter.com/apps/new上注册了 myapp并获得了消费者密钥和秘密。我正在使用以下代码

private static Twitter twitter;
    private static RequestToken requestToken;
ConfigurationBuilder builder = new ConfigurationBuilder();
            builder.setOAuthConsumerKey(TWITTER_CONSUMER_KEY);
            builder.setOAuthConsumerSecret(TWITTER_CONSUMER_SECRET);
            Configuration configuration = builder.build();

            TwitterFactory factory = new TwitterFactory(configuration);
            twitter = factory.getInstance();

            try {
                requestToken = twitter.getOAuthRequestToken(TWITTER_CALLBACK_URL);
                this.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(requestToken.getAuthenticationURL())));
            }

这打开了一个页面,我在其中输入 twitter 帐户的用户名和密码,这成功了。但是我想以编程方式提供用户名和密码以避免打开该页面

4

1 回答 1

1

OAuth 的目的是向应用程序授予(有限的)权限,而不将有关凭据(ID 和密码)的信息传递给应用程序。因此,您要执行的操作与 OAuth 冲突。要以编程方式将凭据传递到 Twitter 身份验证页面的输入字段,需要进行讨厌的 hack。Twitter4J 和其他 Twitter OAuth 库不支持这样的用例。

于 2013-02-01T18:35:01.580 回答