Rails 3.1 OmniAuth с Facebook - ошибка, но ошибка не отправляется - PullRequest
0 голосов
/ 25 июля 2011

У меня странная проблема.

Я следовал этому уроку: https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview

Он отлично работает с точно таким же кодом на моей локальной машине (с модификациями на APP_ID и SECRET).

Но когда я тестирую его на другом сервере, я не могу войти в систему с информацией Facebook ...

Я нажимаю на ссылку (<% = link_to 'зарегистрироваться с помощью fb',user_omniauth_authorize_path (: facebook)%>) тогда я хорошо перенаправлен на Facebook, который спрашивает меня, разрешаю ли я приложение, и, наконец, меня перенаправляют на мой сайт.

Но я перенаправлен на / user / sign_in!И никакая запись с пользователем, полученным из Facebook, не создается.

Журнал дает мне:

Запущен GET "/ users / auth / facebook" для 192.168.1.254 в 2011-07-25 19:06:11 + 0400

Запущено GET "/users/auth/facebook/callback?code=grV09GQr[...]BbcM-mxklOu5E"

для 192.168.1.254 в2011-07-25 19:06:12 +0400 Обработка пользователями :: Ошибка OmniauthCallbacksController # в виде параметров HTML:

{"code" => "grV09GQrqjDepasyQpVhqSg0FINlr4h9 [...] sSUooMrBRxBbcM-mxk0 10 ukl 10*

Перенаправлено на http://mysite.com/users/sign_in Завершено 302 Найдено за 1 мс

У кого-то есть идея?Большое спасибо

1 Ответ

0 голосов
/ 15 августа 2011

Вы получаете страницу входа, потому что это поведение по умолчанию для драгоценного камня omniauth, когда происходит ошибка с Facebook. Вы получаете отказ в Facebook. Если бы вы декодировали код в возвращенном URL, вы могли бы выяснить причину. Было бы полезно, если бы обработчик ошибок сделал это.

При подключении к Facebook вы должны указать URL своего веб-сайта в конфигурации Facebook. Это холст URL или URL / домен веб-сайта в конфигурации. Если этот параметр установлен неправильно, Facebook отклонит ваш запрос на возврат.

...