Подтвердить что ты не робот

Сообщение для входа в Facebook: "URL Blocked: эта переадресация не удалась, потому что URI перенаправления не включен в настройки настроек клиента OAuth".

Важное замечание:

Если вы зарегистрировались для тестирования, перейдите в настройки своего профиля и в интересы добавьте удалить профиль.

Попытка войти с Facebook на мой сайт:

Я получаю следующую ошибку:

URL заблокирован: это перенаправление не удалось, поскольку URI перенаправления не в списке настроек клиента OAuth. Убедитесь, что Клиент и Вход в систему OAuth включен и добавляет все ваши домены приложений в качестве Valid OAuth Перенаправление URI.

My settings (Основы) в Facebook:

На вкладке "Дополнительно" Valid OAuth redirect URIs установлено значение:

http://openstrategynetwork.com/_oauth/facebook?close

Приложение public.

Дополнительные настройки (Дополнительно) здесь: введите описание изображения здесь

Ключ и секрет приложения верны. Я использую пакеты Meteor и его учетные записи.

4b9b3361

Ответ 1

Кнопка входа в систему Facebook на вашем сайте ссылается на:

https://www.facebook.com/v2.2/dialog/oauth?client_id=1500708243571026&redirect_uri=http://openstrategynetwork.com/_oauth/facebook&display=popup&scope=email&state=eyJsb2dpblN0eWxlIjoicG9wdXAiLCJjcmVkZW50aWFsVG9rZW4iOiIwSXhEU05XamJjU0VaQWdqcmF6SXdOUWRuRFozXzc0X19lbVhGWUJTZGNYIiwiaXNDb3Jkb3ZhIjpmYWxzZX0=

Примечание: redirect_uri=http://openstrategynetwork.com/_oauth/facebook

Если вы вместо этого измените ссылку на:

redirect_uri=http://openstrategynetwork.com/_oauth/facebook?close

Он должен работать. Или вы можете изменить ссылку Facebook на http://openstrategynetwork.com/_oauth/facebook

Вы также можете добавить http://localhost/_oauth/facebook в действительные URI переадресации.

Facebook требует, чтобы вы переименовали URI в белый список, поскольку в противном случае люди могли бы подключиться к Facebook для вашей службы, а затем отправить маркер доступа на сервер злоумышленника! И вы не хотите, чтобы это произошло;]

Ответ 2

Как пишет спрашивающий

На вкладке "Дополнительно" допустимые URI перенаправления OAuth установлены на:...

и у меня была та же проблема (запись URL перенаправления в неправильное поле ввода), я хотел бы подчеркнуть, что

Это НЕ

Settings -> Advanced -> Share Redirect Whitelist

но

Facebook Login -> Settings -> Valid OAuth redirect URIs

Это бы сэкономило мне 2 часа проб и ошибок.

Вы также должны иметь в виду, что www.example.com отличается от example.com. Добавьте оба формата в URL перенаправления.

Ответ 3

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

redierct_url = http://127.0.0.1:8080/accounts/facebook/login/callback/

Я получил это из своего браузера после нажатия кнопки Facebook, ваш браузер будет перенаправлен на ссылку для интеграции с API Facebook, так что вы получите это перенаправление. Для моего случая ссылка была вот откуда я взял redirect_url.

https://www.facebook.com/dialog/oauth?client_id=...&scope=&response_type=code&state=...&redirect_uri=http://127.0.0.1:8080/accounts/facebook/login/callback/

enter image description here enter image description here

Ответ 4

Убедитесь, что домен приложения Facebook Login = > действительные URI перенаправления OAuth. Там вы должны проверить www или без www. Это лучше, если вы используете с www или без всех URL-адресов в php, html, css файлах и настройках приложения Fb.

Другое дело, если вы используете "/" конец URL-адресов, вы должны добавить этот URL-адрес в настройки приложения Действительные URI-адреса перенаправления OAuth. Пример: - https://www.example.com/index.php/, если этот URL-адрес, если вы используете в URL-адресе перенаправления, вы должны установить его в настройках приложения.

Надеюсь, это поможет.

Ответ 5

Для моего приложения Node,

"facebook": {
        "clientID" : "##############",
        "clientSecret": "####################",
        "callbackURL": "/auth/facebook/callback/"
    }

поставить обратный URL-адрес родственника

Мои OAuth перенаправляют URI следующим образом

enter image description here

Убедитесь, что "/" в конце URI перенаправления авторизации Facebook

Эти настройки помогли мне.

Ответ 6

Переход от hauth.done = Facebook к hauth_done = Facebook в действительных URI перенаправления OAuth исправил его для меня.

Ответ 7

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

enter image description here

В моем случае мне пришлось использовать: signin-facebook после URL моего сайта, для URL перенаправления.

Ответ 8

Хорошо. Прежде всего, это очень четкое сообщение об ошибке. Просто посмотрите, как многие разработчики пропускают это, в том числе и меня самого Посмотрите на скриншот здесь, пожалуйста.

enter image description here

Под продуктами> Facebook Войти> Настройки

или просто перейдите по этому адресу (замените YOUR_APP_ID на идентификатор вашего приложения, lol):

https://developers.facebook.com/apps/YOUR_APP_ID/fb-login/settings/

Если вы работаете над localhost:3000, убедитесь, что у вас есть https://localhost:3000/auth/facebook/callback

Конечно, вам не нужно иметь статус в реальном времени (зеленый переключатель в правом верхнем углу), но в моем случае я сейчас развертываюсь на heroku и скоро заменю localhost:3000 на https://myapp.herokuapp.com/auth/facebook/callback

Конечно, я буду обновлять URL-адреса в Настройки/Основные & Настройки/Дополнительно, а также добавить URL-адрес политики конфиденциальности в основной раздел.

Я предполагаю, что вы правильно настроили initializer/devise.rb, если вы используете devise и у вас установлен правильный драгоценный камень facebook gem 'omniauth-facebook', '~> 4.0' и gem 'omniauth', '~> 1.6', и у вас есть необходимые столбцы в вашей пользовательской таблице, такие как uid, image, и провайдер. Это.

Ответ 9

Попытайтесь добавить http://openstrategynetwork.com/ sigin-facebook к настройкам клиента OAuth, действительным URL-адрес переадресации вместе с вашим собственным перенаправлением URL.

Ответ 10

Войти Помощник вашего сайта

$loginUrl = $helper- > getLoginUrl ('xyz.com/user_by_facebook/', $permissions);

и в панели инструментов приложения facebook (вкладка "Продукты": Вход в Facebook)

Действительные URI перенаправления OAuth также должны быть одинаковыми для xyz.com/user_by_facebook/

как упоминалось ранее, делая запрос из Интернета

Ответ 11

У нас была та же проблема, такой кошмар.

  • Убедитесь, что ваши идентификаторы приложений и секретные ключи верны. Если вы используете отдельные тестовые и тестовые приложения для тестирования, идентификаторы приложений и секретные ключи для каждого приложения различны. Это часто является проблемой.

  • Убедитесь, что URL-адрес обратного вызова установлен правильно в конфигурационном файле приложения (см. ниже). А затем добавьте это как один и тот же URL-адрес в настройках "Вход в Facebook", где говорится "Действительные URI-адреса перенаправления OAuth". Он должен выглядеть так (в зависимости от вашей среды):

http://localhost/auth/facebook/callback http://staging.example.com/auth/facebook/callback http://example.com/auth/facebook/callback

  1. Убедитесь, что ваш домен приложения настроен на правильный домен для каждой среды, включая "www" и "no-www". Facebook также требует, чтобы эти домены соответствовали URL вашего сайта или платформы приложений. Вам нужно будет выбрать "Добавить платформу", чтобы добавить это.

Ответ 12

В моем случае я включил учетную запись Facebook в учебнике по приложениям Rails. Я добавил http://localhost:3000/adsf в мои действительные URI перенаправления OAuth, но приложение Rails откроет URL как http://0.0.0.0:3000 и поэтому попытается перенаправить на http://0.0.0.0:3000/asdf. После добавления http://0.0.0.0:3000/asdf к допустимым URI перенаправления OAuth или перехода на http://localhost:3000/asdf, он работал, как ожидалось.

Ответ 13

В моем случае URI, как он был определен на FB, был в порядке, но я использовал Spring Security, и он добавлял ; jsessionid = 0B9A5E71DAA32A01A3CD351E6CA1FCDD в мой URI, поэтому это вызывало несовпадение.

https://m.facebook.com/v2.5/dialog/oauth?client_id=your-fb-id-code&response_type=code&redirect_uri=https://localizator.org/auth/facebook;jsessionid=0B9A5E71DAA32A01A3CD351E6CA1FCDD&scope=email&state=b180578a-007b-48bc-bd81-4b08c6989e18

Чтобы избежать перезаписи URL, я добавил disable-url-rewriting = "true" в конфигурацию Spring Security следующим образом:

<http auto-config="true" access-denied-page="/security/accessDenied" use-expressions="true"
      disable-url-rewriting="true" entry-point-ref="authenticationEntryPoint"/> 

И это исправило мою проблему.