Java 验证Twitter4j中的用户?

Java 验证Twitter4j中的用户?,java,twitter,twitter4j,twitter-streaming-api,Java,Twitter,Twitter4j,Twitter Streaming Api,有没有办法让用户输入用户名和密码并验证其帐户?我这样做的理由是确保用户确实拥有该用户名,为了做到这一点,他们必须拥有自己的密码。是否有任何方法可以验证他们的凭据并获得返回的布尔值,无论身份验证是否失败 大概是这样的: if(validated) { // Your validated } else { // Authentication failed. } 我不知道如何使用新的1.1 API做到这一点。我想其他人可能更了解这一点,但作为一种前进的方式,我将分享我的想法,它可能会

有没有办法让用户输入用户名和密码并验证其帐户?我这样做的理由是确保用户确实拥有该用户名,为了做到这一点,他们必须拥有自己的密码。是否有任何方法可以验证他们的凭据并获得返回的布尔值,无论身份验证是否失败

大概是这样的:

if(validated)
{
    // Your validated
}
else
{
    // Authentication failed.
}

我不知道如何使用新的1.1 API做到这一点。

我想其他人可能更了解这一点,但作为一种前进的方式,我将分享我的想法,它可能会帮助您解决您的问题

我不认为这是一种直接返回
布尔值的方法,因为默认情况下您没有访问用户帐户的权限。这在主页上有描述,如果您正在开发web应用程序,我假设您可以遵循下面描述的示例

如果它是一个本地java应用程序,我想你应该选择一个解决方案,在twitter API上注册你的应用程序(获取用户密钥/机密),并授予用户验证权限

基本上,我认为最终用户将与twitter登录页面交互,如twitter4j中的示例所示:

// The factory instance is re-useable and thread safe.
Twitter twitter = TwitterFactory.getSingleton();
twitter.setOAuthConsumer("[consumer key]", "[consumer secret]");
RequestToken requestToken = twitter.getOAuthRequestToken();
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 aviailable) or just hit enter.[PIN]:");
  String pin = br.readLine();
  try{
     if(pin.length() > 0){
       accessToken = twitter.getOAuthAccessToken(requestToken, pin);
     }else{
       accessToken = twitter.getOAuthAccessToken();
     }
  } catch (TwitterException te) {
    if(401 == te.getStatusCode()){
      System.out.println("Unable to get the access token.");
    }else{
      te.printStackTrace();
    }
  }
}
您在本问题中有一些附加信息:

请注意,您需要
Twitter4J
version>=3.0才能获得API 1.1支持

希望它能帮助你前进