Socialite, URI внешней переадресации facebook не перенаправляется в приложение [duplicate]

Это почти то же самое в pеференциях:

 <p:ajax event="change" listener="#{businessPartner.primaryAddress.retrievePostalCodeCity}"  />


import javax.faces.event.AjaxBehaviorEvent;
.....
public void retrievePostalCodeCity(AjaxBehaviorEvent event) {
...
}

Если вы хотите получить доступ через тег компонента action / actionListener , вы можете использовать ActionEvent и для любого случая make убедитесь, что вы установили ajax = "true" :

<p:commandLink actionListener="#{businessPartner.primaryAddress.retrievePostalCodeCity}" ajax="true" />

import javax.faces.event.ActionEvent;

....

public void retrievePostalCodeCity(ActionEvent event) {
    ...
    }
70
задан Amir Rahbaran 6 August 2017 в 08:57
поделиться

10 ответов

Кнопка входа в систему 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

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

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

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

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

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

42
ответ дан Edward Jiang 17 August 2018 в 10:10
поделиться
  • 1
    Я изменил его в facebook. работает. Вау, спасибо большое :) – Amir Rahbaran 3 May 2016 в 19:42
  • 2
    Что такое URI перенаправления OAuth? Я ожидаю, что это будет тот же URL-адрес, что и корневое веб-приложение. – AlvinfromDiaspar 11 May 2016 в 21:24
  • 3
    работал как шарм. Большое спасибо. – learner 18 March 2017 в 11:43
  • 4
    Кажется, это работает. Хотя я не уверен, что это было не изначально, поскольку я пытался войти в систему с учетной записью, в которой у меня создано приложение. Реализовала это решение и использовала другую учетную запись, и она работала (по-видимому). Язык и информация о URI перенаправления UA должны быть четкими. Информация закрыта эзотерической и почти тайной. Используемые термины даже не определены или не уточнены. – abtecas 21 February 2018 в 20:40

Как пишет собеседник

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

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

Это НЕ

Settings -> Advanced -> Share Redirect Whitelist

, но

Facebook Login -> Settings -> Valid OAuth redirect URIs

спас мне 2 часа проб и ошибок.

23
ответ дан andymel 17 August 2018 в 10:10
поделиться

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

2
ответ дан girlgeek 17 August 2018 в 10:10
поделиться

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

0
ответ дан Hung Vu 17 August 2018 в 10:10
поделиться

В моем случае я интегрировал учетную запись Facebook в учебном пособии Rails. Я добавил http: // localhost: 3000 / adsf в мои действительные URI Redirect URI, но приложение 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 , он работал как ожидалось.

0
ответ дан jausel 17 August 2018 в 10:10
поделиться

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

  1. Убедитесь, что ваши идентификаторы приложений и секретные ключи верны. Если вы используете отдельные тестовые и тестовые приложения для тестирования, идентификаторы приложений и секретные ключи для каждого приложения различны. Это часто является проблемой.
  2. Убедитесь, что URL-адрес обратного вызова установлен правильно в конфигурационном файле приложения (см. Ниже). Затем добавьте это как один и тот же URL-адрес в разделе « Facebook Login », где указано « Действительные 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 вашего сайта или платформы приложений. Вам нужно будет выбрать « Добавить платформу », чтобы добавить это.
0
ответ дан kaleazy 17 August 2018 в 10:10
поделиться
  • 1
    требование совпадения URI переадресации с URL-адресом веб-сайта для меня невозможен, потому что мои URI перенаправления или определенные на другом сервере и моем веб-сайте обслуживаются с разных серверов, hwo я могу это сделать? – Jawad 20 February 2018 в 07:51

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

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

помещает обратный вызов Url relative

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

Сделать конечно "/" в конце URI авторизационного перенаправления Facebook

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

6
ответ дан NIKHIL C M 17 August 2018 в 10:10
поделиться

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

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

Hope это поможет.

7
ответ дан Sumith Harshan 17 August 2018 в 10:10
поделиться
  • 1
    в домене приложения вы добавляете как с, так и без www – qwertzman 10 May 2017 в 18:44
  • 2
    спасибо за ваш второй пункт спас мои следующие 3 часа .... – Aneeq Azam Khan 19 March 2018 в 10:33

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

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

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

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

9
ответ дан Umar Asghar 17 August 2018 в 10:10
поделиться

Login Helper вашего сайта

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

и в панели инструментов приложения facebook ( На вкладке продуктов: Facebook Login)

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

, как упоминалось ранее, при обращении к веб-сайту

0
ответ дан zohaib 17 August 2018 в 10:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: