403: запрос понятен, но ему отказали Twitter Android
Я пытаюсь чирикать на twitter от android. Теперь для этого я создал приложение на dev.twitter и загрузил код примера из эту ссылку и обновил оба ключа с помощью мои клавиши приложения.
Теперь я запускаю код, удостоверяющий учетную запись, и после этого я чирикаю, и этот твит включает изображение и текст, оба изображения были на URL как определяемые в примере кода. Теперь я в первый раз показываю, что изображение и текст успешно загружены, но когда я пытаюсь снова чирикать, он дает мне 403 ошибку обновления состояния.
Для этого я меняю текстовое сообщение "Status Text" и URL-адрес изображения, но при этом он обновляет ошибку "403 status". У меня есть тот же код, что и в примере кода, только ключи изменены.
Вот мой Logcat:
10-04 11:26:25.015: W/System.err(22822): 403:The request is understood, but it has been refused. An accompanying error message will explain why. This code is used when requests are being denied due to update limits (https://support.twitter.com/articles/15364-about-twitter-limits-update-api-dm-and-following).
10-04 11:26:25.015: W/System.err(22822): message - Error creating status.
10-04 11:26:25.015: W/System.err(22822): code - 189
10-04 11:26:25.025: W/System.err(22822): Relevant discussions can be found on the Internet at:
10-04 11:26:25.025: W/System.err(22822): http://www.google.co.jp/search?q=b2b52c28 or
10-04 11:26:25.025: W/System.err(22822): http://www.google.co.jp/search?q=11331d43
10-04 11:26:25.025: W/System.err(22822): TwitterException{exceptionCode=[b2b52c28-11331d43], statusCode=403, message=Error creating status., code=189, retryAfter=-1, rateLimitStatus=null, version=3.0.3}
10-04 11:26:25.025: W/System.err(22822): at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:177)
10-04 11:26:25.025: W/System.err(22822): at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
10-04 11:26:25.025: W/System.err(22822): at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:98)
10-04 11:26:25.030: W/System.err(22822): at twitter4j.TwitterImpl.post(TwitterImpl.java:1871)
10-04 11:26:25.030: W/System.err(22822): at twitter4j.TwitterImpl.updateStatus(TwitterImpl.java:252)
10-04 11:26:25.030: W/System.err(22822): at chintan.khetiya.android.Twitter_code.Twitt_Sharing.Share_Pic_Text_Titter(Twitt_Sharing.java:126)
10-04 11:26:25.030: W/System.err(22822): at chintan.khetiya.android.Twitter_code.Twitt_Sharing$PostTwittTask.doInBackground(Twitt_Sharing.java:91)
10-04 11:26:25.030: W/System.err(22822): at chintan.khetiya.android.Twitter_code.Twitt_Sharing$PostTwittTask.doInBackground(Twitt_Sharing.java:1)
10-04 11:26:25.030: W/System.err(22822): at android.os.AsyncTask$2.call(AsyncTask.java:287)
10-04 11:26:25.035: W/System.err(22822): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
10-04 11:26:25.035: W/System.err(22822): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
10-04 11:26:25.040: W/System.err(22822): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
10-04 11:26:25.040: W/System.err(22822): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
10-04 11:26:25.040: W/System.err(22822): at java.lang.Thread.run(Thread.java:856)
Ответы
Ответ 1
У меня была такая же ошибка и обновление до последней версии twitter4j 3.0.5 (на момент написания этой статьи) устранило проблему.
Получите последние данные http://twitter4j.org/en/index.html#download
EDIT: Я должен упомянуть, что версия я была запущена twitter4j 3.0.3. Поэтому, перейдя к версии 3.0.5 или 3.0.6, исправил проблему для меня.
Ответ 2
в
ConfigurationBuilder cb = new ConfigurationBuilder();
добавить
cb.setUseSSL(истина)
он будет работать
Требуется перенаправить url ssl, убедитесь, что ваше приложение работает на https.
Ответ 3
Я столкнулся с этой ошибкой, когда хотел поделиться изображением с неправильным URL-адресом. Оказалось, что я установил неправильную папку в URL-адресе, Twitter не нашел изображение, таким образом, выбросив ошибку. Вопрос в том, почему они показывают эту ошибку, а не что-то вроде "неправильного URL".
Вы также можете столкнуться с этой ошибкой, когда пытаетесь опубликовать более длинный текст. Я столкнулся с этим, когда хотел поделиться текстом (124 символа) и ссылкой (10), и он не позволил мне опубликовать его.
Ответ 4
Эта проблема снова появилась в нестабильной версии 4.0.6.
Попробуйте использовать maven в пути, указанном на веб-сайте twitteer4j:
<dependencies>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>[4.0,)</version>
</dependency>
...
</dependencies>
Вместо этого поставьте определенную версию (текущая стабильная версия 4.0.4 и устраните эту проблему, но [4.0,) получает самую новую версию от 4.0, поэтому 4.0.6)
<dependencies>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>4.0.4</version>
</dependency>
...
</dependencies>