Перестал работать Omniauth-твиттер с Rails 5!OAuth :: Несанкционированный 403 Запрещено - PullRequest
0 голосов
/ 13 июня 2018

Все работало нормально, и Omniauth внезапно перестал работать.Я не делал никаких изменений кода.

Я проверил настройки приложений Twitter: у меня есть URL-адрес обратного вызова для основного рабочего URL-адреса и URL-адрес обратного вызова, заблокированный для номера. Все ключи верны.

Есть идеи?100


OAuth :: Несанкционировано

403 Запрещено

enter image description here

Ответы [ 7 ]

0 голосов
/ 14 июня 2018

Unicode доменное имя.Твиттер дает мне ошибку: неподдерживаемый формат доменного имени.Мне нужно точно соответствовать URL обратного вызова, отправка моим сервером и URL обратного вызова в моем приложении Twitter.Решение: config / initialization / twitter.rb

OmniAuth::Strategies::Twitter.class_eval do
  def callback_url
    return my_custom_twitter_app_callback_url_string_variable
  end
end
0 голосов
/ 14 июня 2018

Я работаю в разработке, а не в производстве, и столкнулся с этой проблемой, используя драгоценные камни omniauth и omniauth-twitter.Но с этими двумя URL-адресами обратного вызова:

http://127.0.0.1:3000
http://localhost:3000/auth/twitter/callback

проблема устранена.Странно, так как руководство RailsApps предупреждает против использования 'localhost' в Twitter.

0 голосов
/ 14 июня 2018

Я смог решить эту проблему (также для разработки), добавив следующие URL:

Для производства:

  • https://mydomain/users/auth/twitter/callback
  • http://mydomain/users/auth/twitter/callback

Для разработки:

  • http://localhost:3000/users/auth/twitter/callback
0 голосов
/ 14 июня 2018

Это почти наверняка связано с этим изменением: ДЕЙСТВИЕ НЕОБХОДИМО - для входа в Twitter пользователи должны занести URL-адреса обратных вызовов в белый список .

По ссылке:

Через 30 дней мы начнем применять белый список так, что любой URL, не добавленный в белый список, потерпит неудачу.Это означает, что URL-адреса больше не могут быть программно переопределены в вызовах к конечной точке 112. oauth / request_token. Предоставленный параметр callback_url должен совпадать с одним из URL-адресов обратного вызова из белого списка.Несмотря на то, что мы обычно даем уведомление о таких изменениях дольше, чем за 30 дней, эта временная шкала позволяет нам продолжать обеспечивать безопасную и надежную работу для разработчиков и наших пользователей.

Вы можете добавить URL обратного вызова в свой белый список настраница настроек приложения на apps.twitter.com 488.

Включите параметр «Включить блокировку обратного вызова», чтобы проверить, что принимаются только те URL-адреса, которые вы занесли в белый список.URL обратного вызова будут автоматически заблокированы, а белый список вступит в силу с 12 июня.Параметр «Включить блокировку обратного вызова» будет удален в эту дату.

Я не смог заставить его работать в разработке с 127.0.0.1, поэтому я в итоге создал запись DNS A, которая указывала на127.0.0.1 (например, dev.example.com) и использовал это в настройках URL обратного вызова на https://apps.twitter.com.

settings

0 голосов
/ 13 июня 2018

Я только что решил проблему, поместив https://domain/oauths/callback в список URL-адресов обратного вызова.Убедитесь, что вы включили опцию блокировки обратного вызова.

0 голосов
/ 13 июня 2018

Теперь в URL обратного вызова в твиттере необходимо добавить 2 URL обратного вызова, а URL обратного вызова должен быть путем к вашему приложению.

Я столкнулся с той же проблемой, теперь при добавлении второго URL обратного вызова,это исправлено.

Для получения дополнительной информации проверьте: https://twittercommunity.com/t/action-required-sign-in-with-twitter-users-must-whitelist-callback-urls/105342

0 голосов
/ 13 июня 2018

Добавление второго URL-адреса обратного вызова для https://mysitecom/auth/twitter/callback исправило проблему (на данный момент)

———-

Обновление: это фактически решило проблему в течение примерно 10 минут.Испытываю ту же проблему сейчас

...