在用java编写的桌面应用程序中自动化Twitter登录

时间:2011-07-19 13:01:02

标签: java twitter oauth-2.0 twitter4j

我正在使用twitter4j库在Java中创建桌面Twitter客户端。我有我的应用程序的API密钥和秘密。现在,在我获得请求令牌后,我获得了用户必须在Web浏览器中打开的授权URL,从他的帐户登录,允许访问应用程序,并检索访问管脚。在应用程序中输入此引脚后,应用程序可以永久访问用户帐户。 Java中有没有办法自动登录/获取引脚过程?

我想要实现的是,用户应该在应用程序本身输入他的用户名和密码,应用程序应该自动获取访问引脚。我不想要任何网络浏览器干预。我怎样才能做到这一点?请帮忙!

4 个答案:

答案 0 :(得分:0)

嗯,我认为这是不可能的:( 也许有一些丑陋的解决方法,比如在java中打开一个浏览器......就像那样......

但没有浏览器,我认为这是不可能的。

答案 1 :(得分:0)

如果不深入了解Twitter实现的细节,我可以说它使用所谓的基于表单的身份验证,即浏览器将用户凭据作为HTTP POST请求发送到服务器。你应该发现它是如何工作的并做同样的事情。您可以使用Firefox pluguin“live http headers”和/或wireshark来获取有关发送到服务器的请求的信息。

答案 2 :(得分:0)

Google提供了一种名为ClientLogin

的身份验证方法

你应该看看twitter API是否提供了类似的oauth方法。这是适用于桌面应用程序的方法。使用与Google ClientLogin类似的方法搜索twitter API身份验证方法。如果没有,那么尝试使用像DJ Project这样的嵌入式摇摆浏览器,并在DJNative swing嵌入式浏览器中进行twitter auth。

答案 3 :(得分:0)

我想我会尝试使用集成的浏览器方法。 http POST请求对我来说似乎很复杂,我之前没有做任何与Web相关的编码。 DJ Project网站上的例子看起来很有希望。谢谢!