2010-12-10 19 views
4

我想从java应用程序自动推文。什么是最简单的方法呢?我能避免使用图书馆Twitter4J这类等等,发布来自java应用程序的推文

我需要一个简单的API实现像

分享Tweet(用户名,密码,邮件)..

谢谢。

+0

java桌面应用程序或Web应用程序? Twitter4j也有一个简单的用法。 – Bozho 2010-12-10 20:13:32

回答

11

我建议你使用twitter4j并使用它你可以很容易地创建oAuth请求。 Twitter的速率限制适用于桌面应用程序,每小时150个。 Twitter不再支持使用用户名和密码的基本身份验证。

您需要在twitter中创建应用程序并使用使用者密钥和密码,只有您可以访问您的Twitter帐户。

如果您要通过桌面应用程序访问Twitter,则必须在创建应用程序时选择 应用程序类型:作为“客户端”。 然后你可以使用下面的语法在Twitter上

ConfigurationBuilder cb = new ConfigurationBuilder(); 
      cb.setDebugEnabled(true) 
       .setOAuthConsumerKey(consumerKey) 
       .setOAuthConsumerSecret(consumerSecret) 
       .setOAuthAccessToken(oAuthAccessToken) 
       .setOAuthAccessTokenSecret(oAuthAccessTokenSecret); 
      TwitterFactory tf = new TwitterFactory(cb.build()); 
      Twitter twitter = tf.getInstance(); 
        twitter.updateStatus("This is a test message"); //ThrowsTwitterException 

我希望这可以帮助你更新你的状态...请让我知道,如果这不是你正在寻找的答案。 实现您自己的oAuth请求涉及创建签名,对我来说这个签名非常复杂,并且对我们发送的时间和时间格式很敏感。

+0

我不知道oAuthAccessToken和oAuthAccessTokenSecret是我的应用程序?或为我的用户帐户?我怎样才能轻松知道他们的价值? – 2011-07-10 08:42:56

+0

我有两个应用程序在我的帐户和令牌是不同的。 对于访问令牌,请单击https://dev.twitter.com/apps - >单击您的应用程序和它下面的我的令牌。请让我知道,如果你想为此屏幕截图 – tamilnad 2011-07-10 11:44:38

1

我想从java 应用程序中自动发送推文。

我希望你是不是垃圾邮件..:d

试试这个:http://code.google.com/p/java-twitter/

你可以用示例代码为:

public void tweet(String username, String password, String message){ 

Api api = Api.builder().username(username).password(password).build(); 
api.updateStatus(message).build().post(); 

} 

然后调用它为tweet.(username,pass,message)

看起来很简单。

2

Twitter有一个REST Web API和大量文档。供参考:

http://dev.twitter.com/doc

虽然你不一定需要Twitter4J,它更容易。否则,您需要组装自己的URL请求并处理认证。他们提供了超过一个风格:

http://dev.twitter.com/pages/auth_overview

传统上,OAuth是针对桌面应用程序的Web服务器集成的首选风格 - 但该协议是一个有点复杂。

没有什么说你不能创建你的Tweet()方法来隐藏使用Tweet4J的细节或自己手动滚动请求。

0

Spring Social?我在SpringOne上看到了它的一个演示 - 看起来很酷,虽然我个人没有它的用​​处,所以除了阅读它之外没有做太多的工作。您可以获得一些OAuth功能和模板,以便与现成的主要社交网站进行交互。