picture open example facebook facebook-graph-api meteor oauth

facebook - example - open graph api



Mensaje de inicio de sesión de Facebook: "URL bloqueada: esta redirección falló porque el URI de redireccionamiento no está incluido en la lista blanca en la Configuración de OAuth del cliente de la aplicación". (13)

Noticia importante:

Si se registra para la prueba, vaya a la configuración de su perfil y agregue eliminar perfil a sus intereses .

Intentando iniciar sesión con Facebook en mi website :

Obtuve el siguiente error:

URL bloqueada: esta redirección falló porque el URI de redireccionamiento no está incluido en la lista blanca en la configuración de OAuth del cliente de la aplicación. Asegúrese de que el inicio de sesión de Cliente y Web OAuth esté activado y agregue todos los dominios de su aplicación como URI de redireccionamiento de OAuth válido.

Mis settings (básicos) en Facebook son:

  • Dominios de la aplicación: openstrategynetwork.com
  • URL del website : website

En la pestaña avanzada, los Valid OAuth redirect URIs se establecen en:

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

La aplicación es public .

Más configuraciones (Avanzadas) aquí:

La clave y el secreto de la aplicación son correctos. Estoy usando Meteor y sus paquetes de cuentas.


Asegúrese de que " App Domain " y Facebook Login => URI de redireccionamiento de OAuth válidos . Allí debe consultar www o sin www . Es mejor si lo usa con www o sin todas las URL en php, html, archivos css y configuraciones de la aplicación Fb.

Otra cosa es que si está usando el final "/" de las URL, debe agregar esa URL a la configuración de la aplicación de URI de redireccionamiento OAuth válidos . Ejemplo: - https://www.example.com/index.php/ si esta url si la está utilizando en la URL de redireccionamiento, debe configurarla en la configuración de la aplicación.

Espero que esto sea de ayuda.


Ayudante de inicio de sesión de su sitio

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

y en el panel de aplicaciones de Facebook (en la pestaña de productos: inicio de sesión de Facebook )

Los URI de redireccionamiento OAuth válidos también deben ser iguales a xyz.com/user_by_facebook/

como se mencionó anteriormente al hacer una solicitud desde la web


Como escribe el interlocutor

En la pestaña avanzada, los URI de redireccionamiento de OAuth válidos se establecen en: ...

y tuve el mismo problema (escribir la URL de redireccionamiento en el campo de entrada incorrecto) Me gustaría resaltar que

No es

Settings -> Advanced -> Share Redirect Whitelist

pero

Facebook Login -> Settings -> Valid OAuth redirect URIs

Me hubiera ahorrado 2 horas de prueba y error.

También debe tener en cuenta que www.example.com no es lo mismo que example.com . Agregue ambos formatos a la URL de redireccionamiento.


El cambio de hauth.done = Facebook a hauth_done = Facebook en los URI de redireccionamiento OAuth válidos me lo arregló.


El inicio de sesión con el botón de Facebook en su sitio está vinculado a:

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

Aviso: redirect_uri=http://openstrategynetwork.com/_oauth/facebook

Si, en cambio, cambia el enlace a:

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

Deberia de funcionar. O bien, puede cambiar el enlace de Facebook a http://openstrategynetwork.com/_oauth/facebook

También puede agregar http://localhost/_oauth/facebook a los URI de redireccionamiento válidos.

Facebook requiere que coloque en la lista blanca los URI de redireccionamiento, ya que de lo contrario las personas podrían iniciar sesión con Facebook para su servicio y luego enviar su token de acceso al servidor de un atacante. Y no quieres que eso suceda;]


En mi caso, el URI, como se definió en FB, estaba bien, pero estaba usando Spring Security y estaba agregando ; jsessionid = 0B9A5E71DAA32A01A3CD351E6CA1FCDD a mi URI, por lo que causó la falta de coincidencia.

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

Para evitar la reescritura de URL agregué disable-url-rewriting = "true" a la configuración de Spring Security, de esta manera:

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

Y solucionó mi problema.



En mi caso, solo tenía que asegurarme de tener mis URL con y sin www para el dominio de aplicación y las URL de redireccionamiento :

En mi caso, tuve que usar: signin-facebook después de la URL de mi sitio, para la URL de redireccionamiento.


Esto funcionó para mí.

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

Lo obtuve de mi navegador después de hacer clic en el botón de Facebook, su navegador será redirigido a un enlace para integrarse con la API de Facebook, de modo que obtendrá esa redirección. Para mi caso, el enlace era este de donde obtuve el 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/


Intente agregar website sigin-facebook a la URL de redireccionamiento válida de la Configuración de Client OAuth junto con su propia URL de redireccionamiento.


Ok Primero que nada, este es un mensaje de error muy claro. Solo mira esto, muchos desarrolladores se pierden esto, incluido yo mismo. Echa un vistazo a la captura de pantalla aquí, por favor.

En Productos> Inicio de sesión en Facebook> Configuración

o simplemente vaya a esta url aquí (Reemplace YOUR_APP_ID con su id de aplicación lol):

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

Si está trabajando en localhost:3000 Asegúrese de tener https://localhost:3000/auth/facebook/callback

Por supuesto, no tiene que tener el estado en vivo (Interruptor verde en la esquina superior derecha), pero en mi caso, me estoy implementando en heroku ahora y pronto reemplazaré localhost:3000 con https://myapp.herokuapp.com/auth/facebook/callback

Por supuesto, actualizaré las URL en Configuración / Básico y Configuración / Avanzado y también agregaré una URL de política de privacidad en la sección básica.

Supongo que ha configurado correctamente los inicializadores / devise.rb si está utilizando devise y tiene la gem ''omniauth-facebook'', ''~> 4.0'' Facebook gem ''omniauth-facebook'', ''~> 4.0'' gema instalada y la gem ''omniauth'', ''~> 1.6'' , y tiene las columnas necesarias en su tabla de usuarios, como uid, imagen y proveedor. Eso es.


Para mi aplicación de nodo,

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

poner devolución de llamada Url relativa

Mi OAuth redirige los URI de la siguiente manera

Asegúrese de que "/" al final del URI de redirección de autenticación de Facebook

Estas configuraciones funcionaron para mí.


Tuvimos el mismo problema, una pesadilla.

  1. Asegúrese de que sus ID de aplicación y claves secretas sean correctas. Si está utilizando aplicaciones de desarrollo, preparación y producción separadas para las pruebas, los ID de aplicación y las claves secretas son diferentes para cada aplicación. Este es a menudo el problema.

  2. Asegúrese de tener la URL de devolución de llamada configurada correctamente en el archivo de configuración de su aplicación (consulte a continuación). Y luego agregue esto como la misma URL en la configuración de " Inicio de sesión de Facebook " donde dice " URI de redireccionamiento de OAuth válido ". Debería verse así (dependiendo de su entorno):

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

  1. Asegúrese de que el dominio de su aplicación esté configurado en el dominio correcto para cada entorno, incluidos "www" y "no-www". Facebook también requiere que estos dominios coincidan con la URL de su sitio web o plataforma de aplicaciones. Tendrá que seleccionar " Agregar plataforma " para agregar esto.