/** * Usage: java twitter4j.examples.tweets.UpdateStatus [text] * * @param args message */ public static void main(String[] args) { if (args.length < 1) { System.out.println("Usage: java twitter4j.examples.tweets.UpdateStatus [text]"); System.exit(-1); } try { Twitter twitter = new TwitterFactory().getInstance(); try { // get request token. // this will throw IllegalStateException if access token is already available RequestToken requestToken = twitter.getOAuthRequestToken(); System.out.println("Got request token."); System.out.println("Request token: " + requestToken.getToken()); System.out.println("Request token secret: " + requestToken.getTokenSecret()); AccessToken accessToken = null; BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); while (null == accessToken) { System.out.println("Open the following URL and grant access to your account:"); System.out.println(requestToken.getAuthorizationURL()); System.out.print( "Enter the PIN(if available) and hit enter after you granted access.[PIN]:"); String pin = br.readLine(); try { if (pin.length() > 0) { accessToken = twitter.getOAuthAccessToken(requestToken, pin); } else { accessToken = twitter.getOAuthAccessToken(requestToken); } } catch (TwitterException te) { if (401 == te.getStatusCode()) { System.out.println("Unable to get the access token."); } else { te.printStackTrace(); } } } System.out.println("Got access token."); System.out.println("Access token: " + accessToken.getToken()); System.out.println("Access token secret: " + accessToken.getTokenSecret()); } catch (IllegalStateException ie) { // access token is already available, or consumer key/secret is not set. if (!twitter.getAuthorization().isEnabled()) { System.out.println("OAuth consumer key/secret is not set."); System.exit(-1); } } Status status = twitter.updateStatus(args[0]); System.out.println("Successfully updated the status to [" + status.getText() + "]."); System.exit(0); } catch (TwitterException te) { te.printStackTrace(); System.out.println("Failed to get timeline: " + te.getMessage()); System.exit(-1); } catch (IOException ioe) { ioe.printStackTrace(); System.out.println("Failed to read the system input."); System.exit(-1); } }
public RequestToken getRequestToken(String type) { if (requestToken == null) { Log.d("===", "requestToken = NULL "); try { if (type.equals("PIC")) { Log.d("===", "PIC"); requestToken = twitterFactory .getInstance() .getOAuthRequestToken(ConstantValues.TWITTER_CALLBACK_URL_PIC); Log.d("===", "requestToken.getToken() = " + requestToken.getToken()); Log.d("===", "requestToken.getTokenSecret: " + requestToken.getTokenSecret()); } else { requestToken = twitterFactory .getInstance() .getOAuthRequestToken(ConstantValues.TWITTER_CALLBACK_URL_VIDEO); } } catch (TwitterException e) { e .printStackTrace(); // To change body of catch statement use File | Settings | File // Templates. } } return requestToken; }
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.twitter_add); accountdb = new AccountDB(this); twitter = new TwitterFactory().getInstance(); twitter.setOAuthConsumer(consumerKey, consumerSecret); try { rqToken = twitter.getOAuthRequestToken(CALLBACK_URL.toString()); } catch (TwitterException e) { e.printStackTrace(); } token = rqToken.getToken(); stoken = rqToken.getTokenSecret(); startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(rqToken.getAuthorizationURL()))); }
@Override public Response performLogin(AuthenticationRequest request) { try { Twitter twitter = new TwitterFactory().getInstance(); twitter.setOAuthConsumer(getConfig().getClientId(), getConfig().getClientSecret()); URI uri = new URI(request.getRedirectUri() + "?state=" + request.getState()); RequestToken requestToken = twitter.getOAuthRequestToken(uri.toString()); ClientSessionModel clientSession = request.getClientSession(); clientSession.setNote("twitter_token", requestToken.getToken()); clientSession.setNote("twitter_tokenSecret", requestToken.getTokenSecret()); URI authenticationUrl = URI.create(requestToken.getAuthenticationURL()); return Response.temporaryRedirect(authenticationUrl).build(); } catch (Exception e) { throw new IdentityBrokerException("Could send authentication request to twitter.", e); } }
/** * Usage: java twitter4j.examples.oauth.GetAccessToken [consumer key] [consumer secret] * * @param args message */ public static void main(String[] args) { File file = new File("src/twitter4j1.properties"); Properties prop = new Properties(); InputStream is = null; OutputStream os = null; String oauth_consumerKey = null; String oauth_consumerSecret = null; try { if (file.exists()) { is = new FileInputStream(file); prop.load(is); oauth_consumerKey = prop.getProperty("oauth.consumerKey"); oauth_consumerSecret = prop.getProperty("oauth.consumerSecret"); System.out.println(oauth_consumerKey); System.out.println(oauth_consumerSecret); } } catch (IOException ioe) { ioe.printStackTrace(); System.exit(-1); } finally { if (is != null) { try { is.close(); } catch (IOException ignore) { } } if (os != null) { try { os.close(); } catch (IOException ignore) { } } } String oauth_requestToken = null; String oauth_requestTokenSecret = null; try { // OAuth有两种Token,分别是RequestToken和AccessTonke。 // 通过OAuth Consumer的key和secret就可以获取RequestTokenKey和RequestTokenSecret: ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.setOAuthConsumerKey(oauth_consumerKey); configurationBuilder.setOAuthConsumerSecret(oauth_consumerSecret); configurationBuilder.setHttpProxyHost("127.0.0.1"); configurationBuilder.setHttpProxyPort(1080); Configuration configuration = configurationBuilder.build(); Twitter twitter = new TwitterFactory(configuration).getInstance(); // Twitter twitter = new TwitterFactory().getInstance(); // twitter.setOAuthConsumer(oauth_consumerKey, oauth_consumerSecret); // RequestToken requestToken = twitter.getOAuthRequestToken(); // RequestToken requestToken = twitter.getOAuthRequestToken(); RequestToken requestToken = twitter.getOAuthRequestToken("http://hintdesk.com"); System.out.println("Got request token."); System.out.println("Request token: " + requestToken.getToken()); System.out.println("Request token secret: " + requestToken.getTokenSecret()); oauth_requestToken = requestToken.getToken(); oauth_requestTokenSecret = requestToken.getTokenSecret(); // //跳转到Twitter OAuth验证页面 // String authorizationURL = requestToken.getAuthorizationURL(); // // // //通过requestTokenKey和requestTokenSecret获得accessToken,包含了accessTokenKey和accessTokenSecret // AccessToken accessToken = twitter.getOAuthAccessToken(oauth_requestToken, // oauth_requestTokenSecret); // //把accessToken给twitter,twitter这个实例就算登陆了,效果等同于twitter = new twitter( "name ", // "password ") // twitter.setOAuthAccessToken(accessToken); // 有了ConsumerKey和ConsumerScret,还有accessToken和accessTokenSecret。 // 下一次登陆twitter就可以直接登陆了 /* twitter = new Twitter(); twitter.setOAuthConsumer(ConsumerKey, ConsumerScret); AccessToken accessToken = new AccessToken(Utility.getCookie( "accessToken ", request), Utility.getCookie( "accessTokenSecret ", request)); twitter.setOAuthAccessToken(accessToken); twitter.updateStatus( "OAuth登陆成功 "); */ AccessToken accessToken = null; BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); while (null == accessToken) { System.out.println("Open the following URL and grant access to your account:"); System.out.println(requestToken.getAuthorizationURL()); try { Desktop.getDesktop().browse(new URI(requestToken.getAuthorizationURL())); } catch (IOException ignore) { } catch (URISyntaxException e) { throw new AssertionError(e); } System.out.print( "Enter the PIN(if available) and hit enter after you granted access.[PIN]:"); String pin = br.readLine(); try { if (pin.length() > 0) { accessToken = twitter.getOAuthAccessToken(requestToken, pin); } else { accessToken = twitter.getOAuthAccessToken(requestToken); } } catch (TwitterException te) { if (401 == te.getStatusCode()) { System.out.println("Unable to get the access token."); } else { te.printStackTrace(); } } } System.out.println("Got access token."); System.out.println("Access token: " + accessToken.getToken()); System.out.println("Access token secret: " + accessToken.getTokenSecret()); try { prop.setProperty("oauth.accessToken", accessToken.getToken()); prop.setProperty("oauth.accessTokenSecret", accessToken.getTokenSecret()); os = new FileOutputStream(file); prop.store(os, "twitter4j1.properties"); os.close(); } catch (IOException ioe) { ioe.printStackTrace(); System.exit(-1); } finally { if (os != null) { try { os.close(); } catch (IOException ignore) { } } } System.out.println("Successfully stored access token to " + file.getAbsolutePath() + "."); System.exit(0); } catch (TwitterException te) { te.printStackTrace(); System.out.println("Failed to get accessToken: " + te.getMessage()); System.exit(-1); } catch (IOException ioe) { ioe.printStackTrace(); System.out.println("Failed to read the system input."); System.exit(-1); } }