У меня есть веб-приложение, которое использует Twitter OAUTH для входа в систему. Я пользуюсь Twitter4J версии 2.1.11Signin с 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);
}
}
Этот код (пока приложение работает) перенаправляет пользователя на страницу входа в Twitter, который после успешной аутентификации, будет вызывать обратного вызова URL.
Однако в последнее время это перестало работать, и я получил следующее исключение.
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
я еще не регенеририрован ключ и секретный код, но будет следующим шагом, если я не смогу заставить его работать.
У кого-нибудь есть ключ, почему это перестанет работать?
Вы проверили правильность установки часов? – abraham
@abraham Спасибо, я проверю часы. Эта ссылка (https://dev.twitter.com/discussions/1043) предполагает, что часы моего сервера должны быть в пределах 5 минут от их часов ... проверит это. Благодарю. – Parag
@abraham Часы сервера отключились, но более 5 минут. Я действительно удивлен, что часы виртуального сервера могут отставать. Это, вероятно, накапливалось медленно и превышало 5 минут. Ты был прав. Можете ли вы отправить свой комментарий в качестве ответа, чтобы я мог его принять. Спасибо Параг. – Parag