2016-11-23 14 views
0

私は複数のTwitterアカウントを今月認証できましたが、私はアプリの権限を変更してDMを表示できました。その後、私は自分のアカウントをreauthentiactedし、最初のアカウントは正常に機能しましたが、追加アカウントはありませんでした。Twitter4jアプリの権限を変更した後のOAuthの「不正な認証データ」コード215

コンシューマーキー、コンシューマーシークレット、アクセストークン、アクセストークンシークレットをコンソールに出力することにしました。私の最初のアカウントには空白がなく、正しく見えます。ただし、2番目のアカウントのアクセストークンは、直接メッセージを許可する前に、アクセストークンのいずれよりも10文字長くなります。私が認証を試みたときにも、私はこのエラーを取得する:エラーメッセージが表示され、いくつかのグーグルによると

400:The request was invalid. An accompanying error message will explain why. This is the status code will be returned during version 1.0 rate limiting(https://dev.twitter.com/pages/rate-limiting). In API v1.1, a request without authentication is considered invalid and you will get this response. 
message - Bad Authentication data. 
code - 215 

は、リクエストが認証なしで行われるたびに、このエラーが走っているようにそれはそう検索します。しかし、私は認証しています。また、どのような方法でキーを変更しても、無効または有効期限の切れたトークン(エラー89)についてはまったく異なるエラーが表示されます。

これは、私が認証した最初のアカウントではなく、追加のアカウントでのみ発生します(最初のアカウントは完全に正常に動作します)。これは私が実行しているコードです:

public class Tweeter { 
    private String consumerKey = null; 
    private String consumerSecret = null; 
    private String accessToken = null; 
    private String accessSecret = null; 
    private Twitter twitter = null; 

    public Tweeter(String consumerKey, String consumerSecret, String accessToken, String accessSecret) { 
     this.consumerKey = consumerKey; 
     this.consumerSecret = consumerSecret; 
     this.accessToken = accessToken; 
     this.accessSecret = accessSecret; 

     ConfigurationBuilder cb = new ConfigurationBuilder(); 
     cb.setOAuthConsumerKey(consumerKey).setOAuthConsumerSecret(consumerSecret).setOAuthAccessToken(accessToken).setOAuthAccessTokenSecret(accessSecret); 

     TwitterFactory factory = new TwitterFactory(cb.build()); 
     twitter = factory.getInstance(); 

     Logger.log("\"" + factory.getInstance().getConfiguration().getOAuthConsumerKey() + "\""); 
     Logger.log("\"" + factory.getInstance().getConfiguration().getOAuthConsumerSecret() + "\""); 
     Logger.log("\"" + factory.getInstance().getConfiguration().getOAuthAccessToken() + "\""); 
     Logger.log("\"" + factory.getInstance().getConfiguration().getOAuthAccessTokenSecret() + "\""); 
    } 

    public String getConsumerKey() { 
     return consumerKey; 
    } 

    public String getConsumerSecret() { 
     return consumerSecret; 
    } 

    public String getAccessToken() { 
     return accessToken; 
    } 

    public String getAccessSecret() { 
     return accessSecret; 
    } 

    public Twitter getTwitter() { 
     return twitter; 
    } 
} 

これは、同じであっても、追加のTwitterアカウントのいくつかと、私は今、数ヶ月のために働いているプロジェクトで使用したのと同じコードです。変更された唯一のことは、今では私がDMを見ることを許可するアプリケーションのアクセス許可です。どのように私は再びこの作業を得ることができる任意のアイデア?ありがとう

答えて

0

問題は解決しました。なぜこれが起こっていたのか分かりませんが、私は追加のアカウントを再認証しようとしました。 Twitterの最後に何か問題があったかどうか、私はこのシステムに何らかの影響を与えていたコードを変更したとは思わない。

関連する問題