Pergunta

Estou usando o Twitter4j-2.1.3.jar para fazer uma postagem simples no Twitter. O código que eu uso é:

System.setProperty("twitter4j.oauth.consumerKey", TWITTER_CONSUMER_KEY);
System.setProperty("twitter4j.oauth.consumerSecret",TWITTER_SECRET_KEY); 
Twitter twitter = new TwitterFactory().getInstance(username,password);
AccessToken accessToken = twitter.getOAuthAccessToken();
twitter.updateStatus(": xAuth test");

A mensagem de erro que recebo é:

 TwitterException{exceptionCode=[e07c50ee-0000d883 1ac06e3f-626a1296], statusCode=401,   retryAfter=0, rateLimitStatus=null, version=2.1.3}

   at twitter4j.http.OAuthAuthorization.getOAuthAccessToken(OAuthAuthorization.java:185)
   at twitter4j.TwitterOAuthSupportBaseImpl.getOAuthAccessToken(TwitterOAuthSupportBaseImpl.java:108)
   at twitter4j.Twitter.getOAuthAccessToken(Twitter.java:54)
   at com.sfway.detailpage.CheckinTab$16$1.run(CheckinTab.java:640)
   TwitterException{exceptionCode=[1ac06e3f-626a1296], statusCode=401, retryAfter=0, rateLimitStatus=null, version=2.1.3}
   at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:307)
   at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:72)
   at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:103)
   at twitter4j.http.OAuthAuthorization.getOAuthAccessToken(OAuthAuthorization.java:178)

Eu tentei outra maneira assim:

ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
configurationBuilder.setOAuthConsumerKey(TWITTER_CONSUMER_KEY); 
configurationBuilder.setOAuthConsumerSecret(TWITTER_SECRET_KEY);
Configuration configuration = configurationBuilder.build();
twitter = new TwitterFactory(configuration).getInstance(username,password);
AccessToken token = twitter.getOAuthAccessToken();
twitter.updateStatus(": xAuth test");

Nos dois métodos, recebo o erro na linha "Twitter.TetoauthaccessToken ()". Por favor, deixe -me saber o que está errado. Eu registrei meu aplicativo exatamente 14 horas antes, para obter a chave secreta e do consumidor. Isso tem algo a ver com a aprovação do meu aplicativo para uso do Xauth, se sim, como posso saber se eles ativaram o Xauth para o meu aplicativo no Twitter.

Foi útil?

Solução

Você enviou um suporte ao Twitter por e -mail para que eles liguem o Xauth para o seu aplicativo?

O Twitter só quer que o Xauth seja usado por aplicativos para desktop e móveis, para que os aplicativos registrados tenham o Xauth desativado por padrão e você precisa de alguém no Twitter para ativá -lo para você. Se você não tiver ativado pelo Application, você obterá um 401.

Para obter o Xauth ativado, envie um email para api@twitter.com com o nome do seu aplicativo e o motivo de ele precisar de Xauth em vez de OAuth antigo e simples (por exemplo. Não é apropriado exibir um navegador da web no meu aplicativo de desktop).

Obrigado Dhrumil Shah

Outras dicas

Você verificou essas postagens ??

http://groups.google.com/group/twitter4j/browse_thread/thread/d6dca9622f7cc42a?fwc=1

Mudar a versão resolveu este problema para uma pessoa

<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>2.1.0</version>
</dependency> 

Tenho postagem no blog no Twitter OAuth usando o Twitter4J e outras bibliotecas. Você pode seguir isso:http://blog.sogeti.com/mobile/2010/03/twitter-oauth-for-android.html

Além disso, se você estiver usando o Twitter4J2.1.3, esteja compatível com o Android 2.0 e acima. Deixe -me saber se você ainda enfrentar problemas, pois eu desenvolvi um aplicativo completo do Twitter usando o Twitter4J 2.0.9.

Eu concordo com Dhrumil Shah: Envie um email para o Twitter em api@twitter.com para solicitar que seu aplicativo tenha o Xauth ativado. Parece que você ainda não fez isso; portanto, o método de serviço Xauth retornará apenas o HTTP 401 quando você o chamar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top