Java 使用jtwitter和SignpostClient的永久twitter oauth
我有一个在服务器上运行的应用程序,使用流api监听各种tweet,然后偶尔发送tweet。使用旧的twitter身份验证系统可以很好地工作,但是使用OAuth有点复杂 我可以成功启动应用程序,我的浏览器打开Twitter的OAuth页面。如果我输入PIN,应用程序运行正常,但我需要能够在无人参与的情况下重新启动应用程序。Twitter的OAuth FAQ说令牌永远不会过期,所以我想做的是在每次应用程序启动时重新使用授权令牌Java 使用jtwitter和SignpostClient的永久twitter oauth,java,twitter,oauth,jtwitter,Java,Twitter,Oauth,Jtwitter,我有一个在服务器上运行的应用程序,使用流api监听各种tweet,然后偶尔发送tweet。使用旧的twitter身份验证系统可以很好地工作,但是使用OAuth有点复杂 我可以成功启动应用程序,我的浏览器打开Twitter的OAuth页面。如果我输入PIN,应用程序运行正常,但我需要能够在无人参与的情况下重新启动应用程序。Twitter的OAuth FAQ说令牌永远不会过期,所以我想做的是在每次应用程序启动时重新使用授权令牌 我该怎么做?还是有其他方法只授权一次?我将回答我自己的问题,因为解决方案
我该怎么做?还是有其他方法只授权一次?我将回答我自己的问题,因为解决方案非常简单 如本页所述,如果您正在使用单用户用例构建应用程序,您可以从Twitter上的应用程序控制面板检索永久访问令牌和访问令牌机密。在“应用程序详细信息”页面中,单击“我的访问令牌”链接 通过阅读OAuthSignPostClient类,我注意到默认的jtwitter实现使用以下方法签名:
public OAuthSignpostClient(String consumerKey, String consumerSecret,
String callbackUrl)
但也可以使用以下方法调用:
public OAuthSignpostClient(String consumerKey, String consumerSecret,
String accessToken, String accessTokenSecret)
因此,我的客户端应用程序代码已从:
OAuthSignpostClient client = new OAuthSignpostClient(MY_OAUTH_KEY,
MY_OAUTH_SECRET, "oob");
致:
一切都很好
OAuthSignpostClient client = new OAuthSignpostClient(MY_OAUTH_KEY,
MY_OAUTH_SECRET, MY_ACCESS_TOKEN, MY_ACCESS_TOKEN_SECRET);