我正在使用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帐户的用户名和密码,这项工作成功。但我想以编程方式提供用户名和密码以避免打开该页面
答案 0 :(得分:1)
OAuth的目的是为应用程序提供(有限的)权限,而不将有关凭据(ID和密码)的信息传递给应用程序。因此,您想要做的事情与OAuth冲突。要以编程方式将凭据传递到Twitter的auth页面的输入字段,将需要讨厌的黑客攻击。 Twitter4J和其他Twitter OAuth库不支持这样的用例。