Omniauth Facebook аутентификация на локальном хосте - PullRequest
22 голосов
/ 31 декабря 2010

Я пытаюсь настроить Omniauth, как описано в этом Railscast .Хотя он работает с Twitter, я не могу заставить его работать с Facebook.Я также настроил 'http://localhost:3000' как siteurl и' localhost 'как домен, но все еще вижу следующее сообщение об ошибке в браузере:

Invalid redirect_uri: Given URL is not allowed by the Application configuration.

Есть ли у кого-нибудь из вас какие-либо предложения по исправлениюэтот?Заранее спасибо.

Ответы [ 5 ]

32 голосов
/ 01 января 2011

Посмотрите на перенаправление в URI. Мой читал localhost: 3000, поэтому я изменил URL сайта на "http://localhost:3000/", и это сработало.

28 голосов
/ 02 февраля 2011

Вот что сработало для меня.

В настоящее время Facebook не позволяет устанавливать IP-адрес для домена сайта, поэтому невозможно установить URL-адрес сайта на http://127.0.0.1:3000/, потому что тогда Facebook будет жаловаться, что URL-адресне соответствует домену.

Поэтому в вашем приложении Facebook установите:

Site URL: http://localhost:3000/
Domain: localhost

Когда вы заходите в приложение на своем компьютере разработчика, убедитесь, что вы набрали localhost: 3000 в браузере.Если вы используете 127.0.0.1:3000, OmniAuth будет использовать его в URL-адресе обратного вызова, который он отправляет в Facebook, а затем Facebook выдаст ошибку, о которой упоминал Райан выше.

15 голосов
/ 26 июля 2011

Я переключаюсь на http://lvh.me:3000 в своем локальном браузере для локального тестирования Facebook.Затем в настройках приложения facebook сделайте lvh.me своим доменом.

lvh.me является зарегистрированным доменом, указывающим на 127.0.0.1, который разработчик купил для локального тестирования поддоменов.

7 голосов
/ 31 декабря 2010

Попробуйте использовать

http://0.0.0.0:3000/

для «URL сайта». Это работает для меня. (Кроме того, у меня ничего нет в поле «Домен сайта».)

0 голосов
/ 10 июля 2012

Если вы используете OSX, вы можете использовать pow http://pow.cx/, чтобы переименовать localhost в

http://yourapp-dev  

(на самом деле не переименован, он добавлен)

вы можете установить, чтокак действительное доменное имя на фейсбуке.

...