Permítanme comenzar diciendo que he buscado una respuesta a esta pregunta durante bastante tiempo ...
Estoy tratando de configurar Facebook OAuth para que funcione con mi aplicación que se está desarrollando localmente en mi máquina. Todo funcionaba perfectamente con la autorización de Facebook HASTA que pasé de usar localhost
otro nombre de dominio (aún local a mi máquina). Ahora recibo el siguiente error.
No se puede cargar la URL: el dominio de esta URL no está incluido en los dominios de la aplicación. Para poder cargar esta URL, agregue todos los dominios y subdominios de su aplicación al campo Dominios de aplicación en la configuración de su aplicación.
Mi archivo de hosts contiene 127.0.0.1 photovote.dev
(funciona perfecto)
Mi redirección en mi aplicación (usando Socialite) es http://photovote.dev/auth/facebook/callback
En la configuración de mi aplicación de Facebook ...
- mi dominio de aplicación es
photovote.dev
- mi URL del sitio es
http://photovote.dev/
- mi URI de redireccionamiento OAuth válido es
http://photovote.dev/auth/facebook/callback
La URL en el momento del mensaje de error es ...
https://www.facebook.com/v2.5/dialog/oauth?
No sé cuál es el problema ...
Respuestas:
Esto generalmente sucede si ha ingresado los detalles incorrectos cuando creó la aplicación en Facebook. ¿O ha cambiado las URL de una aplicación existente?
¿Puede volver a verificar la configuración de su aplicación en esta página?
https://developers.facebook.com/apps
Seleccione la aplicación correcta y haga clic en el botón editar;
Verifique que las URL y las rutas estén correctamente ingresadas y que apunten al sitio donde ha instalado el complemento Ultimate de Facebook.
fuente
En caso de que alguien se encuentre con esto y esté buscando esta configuración (como yo)
Tienes que
Información adicional: asegúrese de agregar la URL de devolución de llamada como
http://localhost:3000
alValid OAuth redirect URIs
campo en la página de configuración de inicio de sesión de Facebookfuente
Valid OAuth Redirect URIs
y al agregar este valor de campo se resolvió el mensaje de error FB incorrecto relacionado con la actualización de suApp Domains
.Yo tuve el mismo problema. Lo resolví agregando mi URI de redireccionamiento OAuth como argumento para la llamada a la función getAccessToken:
Si no se envía ningún argumento a esa función, el SDK genera el URI de redireccionamiento por sí mismo, lo que debería funcionar, pero en mi caso no lo hizo.
Espero que esto ayude a alguien.
fuente
Asegúrate de que tu aplicación sea pública. Haga clic en + Agregar producto Ahora vaya a productos => Facebook Inicie sesión ahora haga lo siguiente:
URI de redireccionamiento OAuth válidos: example.com/
Desautorizar URL de devolución de llamada: https://example.com/facebookapp
fuente
Deauthorize Callback URL : https://example.com/facebookapp
necesario? ¿Funcionará sin eso?Esto es lo que hice para resolver este problema:
Básicamente:
1) Habilite el " Inicio de sesión integrado del navegador OAuth "
2) Desactive " Usar modo estricto para URI de redireccionamiento " e ingrese un URI de redireccionamiento como lo hice yo.
3) Deje el resto de las opciones como están.
4) Guarde sus cambios.
5) Disfruta :)
fuente
Tuve el mismo problema, y vino de un ID de cliente / ID de aplicación de Facebook incorrecto.
¿Cambió su aplicación de Facebook a "pública" o "en línea? Cuando lo hace, Facebook crea una nueva aplicación con una nueva ID de aplicación.
Puede comparar el valor del parámetro "client_id" en la url con el del panel de control de Facebook.
fuente
La forma en que lo arreglé: fui al cuadro de texto Valid OAuth Redirect URIs y configuré la URL exacta , no solo el dominio :
antes de:
https://my-website.com
después:
https://my-website.com/facebookoauth/facebooklogin
(la url puede ser diferente en su caso, verifíquela en la barra de direcciones del navegador).
Esto fue causado por la configuración Usar modo estricto para URI de redireccionamiento, que estaba bloqueado en la posición Sí.
fuente
Hoy tuve este problema, encuentro que la documentación de Facebook y el SDK son irrespetuosos y atroces con otros desarrolladores, por decir lo menos.
Además de tener los "dominios de la aplicación" en dos ubicaciones diferentes sin mucha información (3 si agrega una plataforma "web"), también debe ir a productos de la aplicación / inicio de sesión / configuración de Facebook y agregar su URL de redireccionamiento en URI de redireccionamiento OAuth válido
El error no dice NADA sobre la configuración de oauth.
fuente
A partir de 2017-10.
Solución que resolvió mi problema.
Actualmente ese FB rinde esta sorpresa.
La configuración para ajustar se encuentra aquí https://developers.facebook.com/apps/[your_app_itentifierfont>/fb-login/ .
La barra inclinada final es importante. Deben coincidir en el código de su aplicación y en la configuración de administración de FB. Entonces, esta es una configuración en algún lugar de su código (vea a continuación cómo obtener cualquier nombre de dominio para una aplicación de desarrollo):
y aquí
Para obtener cualquier nombre de dominio para una aplicación en una máquina Windows local, edite el
host
archivo. Los nombres personalizados son buenas con el fin de deshacerse de todos aquelloslocalhost:8080
,0.0.0.0:30303
,127.0.0.0:8000
, etcétera. Debido a que algunos servicios de terceros como FB a veces no le permiten usar127.0.0.0
nombres.En Windows 10 el
hosts
archivo está aquí:Copia de seguridad del archivo inicial, cree una copia con un nombre diferente (No funciona en Windows CMD nativo. Uso Git para Windows , tiene muchos comandos Unix)
Agregue esto en
hosts
Para deshacerse de la parte del puerto,
:3000
configure NGINX, por ejemplo.fuente
Haga clic aquí Código Proyecto ! Su ejemplo de proyecto de código. Me esta funcionando
fuente
La mayoría de las veces sucede sin insertar la URL de redireccionamiento OAuth válida adecuada en la sección del producto del panel de control de FB. Sugiero seguir mis pasos a continuación
01. Verifique que la configuración básica de la aplicación esté bien con la siguiente imagen con usted
02. verifica si has agregado un producto
Si no, puede agregar fácilmente el producto de inicio de sesión haciendo clic en + seno como lo muestro a continuación.
En caso afirmativo, solo llegué al interior de la configuración del producto.
03. Verifique si ha proporcionado una URL de redireccionamiento OAuth válida
Simplemente significa lo que debería después de iniciar sesión. No es otra cosa que su URL de devolución de llamada. Puede ver en mi siguiente imagen que he agregado varias URL de redireccionamiento.
fuente
Facebook ha deshabilitado recientemente el botón de alternancia para ' Usar el modo estricto para redirigir los URI ', por lo que debe agregar el URI exacto que se llama cuando presiona el botón de inicio de sesión. Para mi caso fue como se muestra en la captura de pantalla. Resolvió el problema para mí :)
fuente
Yo tuve el mismo problema,
Acabo de añadir el enlace de mi dirección local de http: //localhost/Facebook%20Login%20Test.html que
Site URL
en mi configuración de la aplicación https://developers.facebook.com/apps .Ahora funciona bien :) Espero que esto haya sido útil;)
fuente
En mi caso, lo que tenía que hacer era habilitar el inicio de sesión de OAuth del navegador incorporado
fuente
Nada realmente funcionó para mí, hasta que actualicé la versión del SDK que estaba usando. Empecé con 5.0. Ni siquiera 5.4.0 tampoco funcionaría. Cuando actualicé a 5.6.2, funcionó a la perfección, ¡a pesar de que no había nada en los registros de cambios que fuera relevante!
fuente
Esta opción debe estar habilitada en el portal:
fuente
En caso de que esto ayude a alguien más, esto comenzó a suceder en un sitio antiguo cuando los "URI de redireccionamiento de OAuth válidos" se hicieron obligatorios. El sitio todavía estaba usando el V4 PHP SDK y el problema se resolvió por mí al actualizar al V5 SDK.
fuente
En la sección Dominio de la aplicación, está escribiendo su dominio de la aplicación, pero también necesita agregar su dominio de inicio de sesión, es decir, el nombre de la página html donde solicita al usuario que inicie sesión. En mi caso, lo estaba probando en localhost y la ruta de inicio de sesión era localhost / login. Si solo pongo http://localhost.com en la sección Dominio de la aplicación, aparece este error. Pero después de agregar http: //localhost/login.com , se solucionó el error. y también la configuración de la aplicación ha cambiado en la versión más reciente del SDK, en la que no hay opción para la ruta de redireccionamiento de OAuth. Debe asignar la ruta de redireccionamiento directamente desde el lado del servidor, después de obtener con éxito el token OAuth.
fuente
Esto funcionó para mí:
Esto es lo que hay que entender: Facebook siempre buscará el dominio " WWW ". Así que asegúrese de que www.your_domain.dev funcione primero en su navegador.
Es posible que si tiene varios hosts virtuales en su servidor local, algún otro host virtual anule " www.your_domain.dev ". Así que por favor revisa eso. Apache elegirá la PRIMERA definición de dominio (o puertos, o algo en estos términos; no soy un experto en esto, pero aprendí por errores). Una solución rápida y fácil para esta anulación de host virtual es colocar " www.your_domain.dev definición de host virtual en la parte superior del archivo" httpd-vhosts.conf ".
Vaya a " /apache/conf/https-vhosts.conf " y coloque esto en la parte superior del archivo:
Siguiente: Si está utilizando el sistema Windows, edite su archivo "hosts" en "C: \ Windows \ System32 \ drivers \ etc" agregando dos líneas:
Siguiente: reinicie su servidor Apache y todo debería funcionar ahora.
Espero que esto te ayude y te ahorre tiempo. Perdí casi todo un día buscando en la web y me estaba arrancando el pelo y no pude encontrar nada útil hasta que encontré esto.
fuente
Tuve el mismo problema ... el problema está en la versión PHP SDK 5.6.2 y la solución fue editar el siguiente archivo:
facebook\src\Facebook\Helpers\FacebookRedirectLoginHelper.php
cambia esta línea
$redirectUrl = FacebookUrlManipulator::removeParamsFromUrl($redirectUrl,['state','code']);
a
$redirectUrl = FacebookUrlManipulator::removeParamsFromUrl($redirectUrl,['state','code','enforce_https']);
fuente
Este mismo error de Facebook me sucedió en el entorno de producción. La razón fue que tenía 2 aplicaciones registradas en Facebook (Local, Producción) pero codifiqué el ID de la aplicación Local en el código fuente y olvidé cambiarlo por el ID de la aplicación de Producción antes de la implementación.
La mejor práctica dicta que no debe tener la ID de la aplicación codificada en el código fuente, pero si lo hace, no coincida con sus diversas ID de aplicaciones de Facebook como lo hice por error.
fuente
Usando mi propio servidor local.
Simplemente agregando
http://localhost/my-site
como URL en:https://developers.facebook.com/apps/YOUR-APP-ID/fb-login/
trabajó para mi.
fuente
El problema y las respuestas siguen cambiando a medida que FB ajusta el procedimiento de inicio de sesión. Hoy, comencé a recibir este mensaje de horror "El dominio de esta URL no está incluido en los dominios de la aplicación. Para poder cargar esta URL, agregue todos los dominios y subdominios de su aplicación al campo Dominios de la aplicación en la configuración de su aplicación".
La respuesta fue: ahora FB quiere la uri de redireccionamiento completo. Entonces, para mí, donde solía ser solo https://www.example.com ahora quiere https://www.example.com/auth/facebook/callback . Esto tiene que ir en el campo "URI de redireccionamiento de OAuth válido" (desarrollador / inicio de sesión de Facebook-> configuración)
fuente
Inicio de sesión en Facebook -> Configuración -> URI de redireccionamiento OAuth válidos -> inserte los dominios de su URL de redireccionamiento, recuerde que debe agregar 'https' o http. por ejemplo: si su URL de redireccionamiento es https://xxx.xxx.com/path/callback.do , solo necesita ingresar https://xxx.xxx.com/ , está bien para mí.
fuente
primer paso: use todos los https://example.in o URL del certificado SSL, no use http://example.in
segundo paso: configuración de la aplicación faceboook-> configuración básica-> agrega tu dominio o subdominio
tercer paso: configuración de inicio de sesión de la aplicación faceboook-> URI de redireccionamiento de OAuth válido-> agregue su URL de redireccionamiento completo después de iniciar sesión
cuarto paso: configuración de la aplicación faceboook-> configuración avanzada-> Administrador de dominio-> agregue su nombre de dominio
haga todo este paso y luego use su ID de aplicación, versión de la aplicación, secreto de la aplicación para la configuración
fuente
en la extensión Magento 2 Social Login, debe copiar los URI de redireccionamiento de OAuth válidos desde el panel y agregar el enlace al campo URI de redireccionamiento de OAuth válido en la página Configuración de OAuth del cliente en developers.facebook.com
fuente
Si su juego no tiene servidor / sitio (por ejemplo, si se desarrolla para Gameroom como yo), agregue " https://apps.facebook.com/xxxxxxxxxxxxxxxxx " (coloque su ID de aplicación en lugar de "xxxxxxxxxxxx") a "URI de redireccionamiento de OAuth válido ".
fuente
La mayoría de las respuestas se refieren a agregar la URL al dominio de la aplicación, pero cuando trabajas para una empresa no tienes estos accesos. Para eso, puedes evitar esto simplemente haciendo un host virtual y haciendo una entrada de host.
agregue esto en el archivo de host (/ etc / hosts) 127.0.0.1 www.your_domain.com
crear un host virtual. Lo he usado para el host virtual apache
ServerAdmin webmaster @ localhost ServerName www.your_domain.com
fuente