API Twitter не учитывает мой параметр callback_url

Я прочитал все темы о подобных проблемах на SO и в других местах, и ни одна из них не решила мою проблему.

Я использую Twython в качестве оболочки для API. Я пытался установить oauth_callback ВЕЗДЕ. Используя внутренний механизм в Tython (который выполняется путем установки callback_url при создании экземпляра), путем ручного изменения auth_url и добавления аргумента перед перенаправлением пользователя и т. д. Я пытался удалить и воссоздать как новые приложения Twitter, так и новые учетные записи Twitter, но безрезультатно.

Всякий раз, когда я перенаправляю клиента на твиттер, правильный oauth_callback ВСЕГДА виден в URL-адресе вместе с oauth_token, но API всегда игнорирует этот аргумент и переопределяет его URL-адресом в настройках моего приложения Twitter (оба находятся в одном домене) . Я пытался понять это в течение нескольких часов, и я в тупике. Я видел эту работу раньше и делал это много раз, поэтому я не знаю, что может пойти не так.

Это странно - даже если я устанавливаю обратный вызов на «oob», который должен запускать рабочий процесс PIN, а не обратный вызов, этот аргумент ДАЖЕ ТОГДА игнорируется. Есть идеи, почему?


person D-Nice    schedule 15.05.2011    source источник


Ответы (1)


Вы указываете значение oauth_callback при получении токена запроса, как указано в OAuth 1.0a. В версии 1.0 его можно было передать вместе с пользователем, когда он заходит на twitter.com, но он был изменен по соображениям безопасности. Подробнее об этом можно прочитать в /oauth/request_token.

person abraham    schedule 16.05.2011
comment
Я использую обновленную версию Twython для аутентификации. Объект создается с помощью callback_url = {myURL}, и, насколько я могу судить, библиотека обрабатывает все правильно. github.com/ryanmcgrath/twython/blob/master/twython/twython. пи - person D-Nice; 17.05.2011
comment
Я недостаточно знаю Python, чтобы знать, правильно ли twython реализует oauth_callback, но эта строка мне кажется, что она не поддерживает обратные вызовы OAuth 1.0a. Я могу подтвердить на 100%, что Twitter поддерживает динамические обратные вызовы, и если он не работает, либо библиотека не поддерживает его, либо вы неправильно вызываете библиотеку. - person abraham; 17.05.2011
comment
ааа хороший момент, не знаю, как я пропустил это. это именно то, что мне нужно было знать. благодаря. - person D-Nice; 17.05.2011