Почему эта ошибка «- Приложение только для чтения не может POST»

Логкат:

12-05 23:37:01.721:W/System.err(534):  401:Authentication credentials  (https://dev.twitter.com/docs/auth) were missing or incorrect. Ensure that you have set valid     conumer key/secret, access token/secret, and the system clock in in sync.
12-05 23:37:01.721: W/System.err(534): 401:Authentication credentials (https://dev.twitter.com/docs/auth) were missing or incorrect. Ensure that you have set valid conumer key/secret, access token/secret, and the system clock in in sync.
12-05 23:37:01.721: W/System.err(534): error - Read-only application cannot POST
12-05 23:37:01.721: W/System.err(534): request - /1/statuses/update.json

Хотя я могу прочитать имя экрана с помощью (функция getScreenName()) и установить разрешение на чтение и запись для моего приложения Twitter, оно дает указанный выше logcat. И я использую файл jar twitter4j.


person sayem siam    schedule 05.12.2011    source источник
comment
Похоже, вы не указали данные аутентификации для учетной записи. Разместите свой код.   -  person Ted Hopp    schedule 05.12.2011
comment
Вот мой полный код stackoverflow.com/questions/8382021/   -  person sayem siam    schedule 05.12.2011
comment
Пожалуйста, не повторяйте тот же вопрос.   -  person Ted Hopp    schedule 05.12.2011
comment
Но я не получил ответа в то время и действительно застрял с этой проблемой. я видел всю документацию, чтобы сделать код правильно. Но это не работает   -  person sayem siam    schedule 05.12.2011
comment
Этому вопросу всего 11 часов. Прочтите часто задаваемые вопросы о том, что делать, если вы не получили ответа.   -  person Ted Hopp    schedule 05.12.2011


Ответы (7)


  • Войдите в свое приложение: http://dev.twitter.com/apps
  • На вкладке Settings измените Application type на Read, Write and Access direct messages.
  • На вкладке Reset keys нажмите кнопку Reset, соответственно обновите ключ потребителя и секрет в своем приложении.

Похоже, что сброс ключей приводит к вступлению в силу изменения типа вашего приложения.

person Benjamin Crouzier    schedule 24.09.2012
comment
Я не уверен, почему, но сброс моего потребительского ключа и секрета не решил эту проблему для меня, пытающегося отправлять личные сообщения людям, у меня все еще есть приложение только для чтения, которое не может отправить сообщение, несмотря на перезапуск моего приложения, ручное отзыв приложения и авторизовать его снова, и повторно запустить тест. В конце концов я воссоздал свой токен доступа (кнопка «Восстановить мой токен доступа» на панели «Подробности» приложения на dev.twitter.com), и можно было отправить прямое сообщение. Я не могу сказать, было ли это необходимо, или сработал ли сброс ключа / секрета потребителя, и я просто не ждал достаточно долго, чтобы он вступил в силу. - person Neek; 08.11.2012
comment
После того, как вы измените свои разрешения, вы должны повторно сгенерировать токен доступа и секретный токен доступа. - person user3732708; 16.05.2018

Перейдите на страницу https://dev.twitter.com/ -> Мои приложения -> "перейти к текущему приложению". " -> Настройка -> Разрешить "Чтение, запись и прямой доступ" -> Сохранить. После этого удалите проект с эмулятора или устройства -> Очистить проект -> Запустить проект.

Надеюсь, это будет полезно. Попробуй это:

person Android Agency    schedule 04.05.2013

Шаги, чтобы следовать для этой проблемы.

Зайдите в учетную запись, используя

https://dev.twitter.com/apps и перейдите в настройки.

и Измените разрешение Read-only на

Read, Write and Access direct messages

и обновить страницу. и если в случае невозможности обновления, повторно создайте токен и повторите попытку, проблема будет решена.

person Kishan Bheemajiyani    schedule 13.09.2013

Может быть проблема с вашим твиттер-приложением: Разрешение на запись может остаться, если оно создает проблему:

Перейдите на страницу https://dev.twitter.com/ -> Мои приложения -> "перейти к текущему приложению". " -> Настройка -> Разрешить "Чтение, запись и прямой доступ" -> Сохранить. После этого удалите проект с эмулятора или устройства -> Очистить проект -> Запустить проект.

Надеюсь, это будет полезно:

person user2368799    schedule 10.05.2013

Вы также должны отозвать свое старое разрешение после сброса разрешения.

  1. Перейдите на страницу https://twitter.com/settings/applications.
  2. Найдите свое приложение, и вы увидите, что оно имеет разрешение на чтение
  3. Отменить доступ
person Rubin Yoo    schedule 26.07.2016

Зарегистрировали ли вы свое приложение в Twitter, чтобы получить секретный ключ потребителя?

person flyingCaffine    schedule 05.12.2011
comment
Да, я зарегистрировал приложение, чтобы получить секретный ключ потребителя - person sayem siam; 05.12.2011
comment
Здесь вы можете найти весь код stackoverflow.com/questions/8382021/ - person sayem siam; 05.12.2011
comment
Я действительно застрял с этим. Спасибо - person sayem siam; 05.12.2011

  1. Перейдите на портал.
  2. Вариант: вкладка "Проекты и приложения".
  3. Внутри этой опции перейдите в «Настройки», «Разрешения приложения» и измените Read-only на Read + Write + Post Read Direct Messages.
  4. Сохранить
  5. Наконец, перейдите к Keys and Tokens tab и заново сгенерируйте только токен доступа и секрет.
person Yudi Guzmán    schedule 02.07.2021