2012-03-25 17 views
0

私はTwitterのOAUTHを使ってユーザーにログインするウェブアプリケーションを持っています。私はTwitter4Jバージョン2.1.11を使用していますTwitterと一緒にサインインが突然動かなくなった

このアプリケーションは完璧に動作しており、最近数週間で動作を停止する可能性があります。

public static void authWithTwitter() { 
    try {   
     Twitter twitter = new TwitterFactory().getInstance(); 
     twitter.setOAuthConsumer(TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET); 
     RequestToken requestToken = twitter.getOAuthRequestToken(getTwitterCallbackUrl()); 
     // save requestToken for retreival after user logs in 
      // code not shown for brevity 
     redirect(requestToken.getAuthenticationURL()); 
    } catch(Exception e) { 
     cLogger.error("Could not perform pre twitter login steps", e); 
    } 
} 

このコードは、認証が成功すると、コールバックURLを呼び出すとTwitterのログインページにユーザーをリダイレクト(アプリまで働いていた)でしょう。

しかし、最近、これが機能しなくなり、次の例外が発生します。

401:Authentication credentials (http://dev.twitter.com/pages/auth) were missing or incorrect. Ensure that you have set valid conumer key/secret, access token/secret, and the system clock in in sync. 
Failed to validate oauth signature and token 
Relevant discussions can be on the Internet at: 
     http://www.google.co.jp/search?q=8dda30a8 or 
     http://www.google.co.jp/search?q=68161d96 
TwitterException{exceptionCode=[8dda30a8-68161d96], statusCode=401, retryAfter=0, rateLimitStatus=null, version=2.1.11} 
     at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:199) 
     at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:75) 
     at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:112) 
     at twitter4j.http.OAuthAuthorization.getOAuthRequestToken(OAuthAuthorization.java:148) 
     at twitter4j.TwitterOAuthSupportBaseImpl.getOAuthRequestToken(TwitterOAuthSupportBaseImpl.java:88) 
     at twitter4j.Twitter.getOAuthRequestToken(Twitter.java:58) 

私はいくつかの検索を行なったし、私はコールバックURLは、私はまだキーとコンシューマシークレットを再生成していないdev.Twitter.com

の私のアプリの設定で正しく設定されていることを確認し、それ私はそれを働かせることができない場合、次のステップになります。

誰かが手がかりを持っていますが、なぜこれが機能しなくなるのでしょうか?

+0

時計が正しく設定されていることを確認しましたか? – abraham

+0

@abrahamありがとう私は時計をチェックします。このリンク(https://dev.twitter.com/discussions/1043)は、私のサーバーの時計が時計の5分以内でなければならないことを示唆しています。ありがとう。 – Parag

+0

@abrahamサーバーの時計がオフになっていますが、5分以上経過しています。仮想サーバーの時計が遅れる可能性があることに私は本当に驚いています。これはおそらくゆっくりと蓄積し、5分を超えました。あなたは正しかった。私はそれを受け入れることができるので、答えとしてコメントを投稿してください。ありがとうParag。 – Parag

答えて

1

サーバーの時計が正しく設定されていることを確認してください。 Twitterのリクエストから数分以上離れていると失敗します。

関連する問題