Как настроить facebook для включения "входа в Facebook" для сервера django?

У меня есть трудности с настройкой страницы разработчика Facebook для использования "аутентификации facebook" для веб-сайта, основанного на django и django-allauth.

Вот контекст:

DNS : www.mysite.com
Subdomain  for development : dev.mysite.com redirected to XX.XX.XX.XX :8000

Сервер работает на моем компьютере под управлением Windows за простым домашним маршрутизатором. Я запускаю его обычной командой:

Django runserver 0.0.0.0 :8000

Соединение с сервером: dev.myste.com в порядке

Но нажатие на кнопку "Войти через Facebook" выдает эту ошибку:

URL Blocked: This redirect failed because the redirect URI is not whitelisted in the app’s Client OAuth Settings. Make sure Client and Web OAuth Login are on and add all your app domains as Valid OAuth Redirect URIs.

Конфигурация Facebook:

Настройки / основные:

App Domains= mysite.com
Site url : dev.mysite.com

Продукт / Логин:

Client OAuth Login : Yes
Web OAuth Login: Yes
Embedded Browser OAuth Login : Yes
Force Web OAuth Reauthentication : No
Valid OAuth redirect URIs: http://dev.mysite.com
Login from Devices: No

Спасибо за помощь и внимание.

1 ответ

Используя Firebug, я вижу, что сервер django отправляет в Facebook следующий запрос oauth.

https://www.facebook.com/dialog/oauth?scope=email&state=RXBpz0X5agrX&redirect_uri=http%3A%2F%2FXX.XXX.XXX.XX%3A8000%2Faccounts%2Ffacebook%2Flogin%2Fcallback%2F&response_type=code&client_id=ABCDEFGF

Обратите внимание на параметр redirect_uri в запросе. Я добавляю параметр redirect_uri в поле "Действительные URI перенаправления OAuth" на странице facebook/ логин, и он сразу работает.

Другие вопросы по тегам