Avis important:
Si vous vous inscrivez au test, allez dans les paramètres de votre profil et dans votre interest ajoutez delete profile.
Essayer de se connecter avec Facebook à mon site web :
Je reçois l'erreur suivante:
URL bloquée: cette redirection a échoué car l'URI de redirection n'est pas liste blanche dans les paramètres OAuth du client de l'application. Assurez-vous que Client et La connexion Web OAuth est activée et ajoute tous vos domaines d'application en tant que Valid OAuth Rediriger les URI.
Mes settings
(bases) sur Facebook sont:
website
: http://openstrategynetwork.com/Dans l'onglet Avancé, Valid OAuth redirect URIs
est défini sur:
http://openstrategynetwork.com/_oauth/facebook?close
App est public
.
Plus de réglages (avancé) ici:
La clé et le secret de l'application sont corrects. J'utilise Meteor et ses packages de comptes.
Le bouton de connexion avec Facebook de votre site est lié à:
https://www.facebook.com/v2.2/dialog/oauth?client_id=1500708243571026&redirect_uri=http://openstrategynetwork.com/_oauth/facebook&display=popup&scope=email&state=eyJsb2dpblN0eWxlIjoicG9wdXAiLCJjcmVkZW50aWFsVG9rZW4iOiIwSXhEU05XamJjU0VaQWdqcmF6SXdOUWRuRFozXzc0X19lbVhGWUJTZGNYIiwiaXNDb3Jkb3ZhIjpmYWxzZX0=
Avis: redirect_uri=http://openstrategynetwork.com/_oauth/facebook
Si vous changez plutôt le lien en:
redirect_uri=http://openstrategynetwork.com/_oauth/facebook?close
Ça devrait marcher. Ou, vous pouvez changer le lien Facebook en http://openstrategynetwork.com/_oauth/facebook
Vous pouvez également ajouter http://localhost/_oauth/facebook
aux URI de redirection valides.
Facebook exige que vous ajoutiez la liste blanche des URI de redirection, sinon les utilisateurs pourraient se connecter à Facebook pour votre service, puis envoyer leur jeton d'accès au serveur d'un attaquant! Et vous ne voulez pas que cela se produise;]
Comme le questionne écrit
Dans l'onglet Avancé, les URI de redirection OAuth valides sont définis sur: ...
et j'ai eu le même problème (écrire l'URL de redirection dans le mauvais champ de saisie), j'aimerais souligner que
Ce n'est pas
Settings -> Advanced -> Share Redirect Whitelist
mais
Facebook Login -> Settings -> Valid OAuth redirect URIs
Cela m'aurait évité 2 heures d'essais et d'erreurs.
Cela a fonctionné pour moi.
redierct_url = http://127.0.0.1:8080/accounts/facebook/login/callback/
Je l'ai reçu de mon navigateur après avoir cliqué sur le bouton Facebook. Votre navigateur sera redirigé vers un lien d'intégration avec l'API de Facebook, d'où vous obtiendrez cette redirection. Pour mon cas, le lien était celui d'où j'ai obtenu le redirect_url.
Assurez-vous que "App Domain" et Facebook Login => URI de redirection OAuth valides. Là, vous devez vérifier www ou sans www. C'est mieux si vous utilisez avec ou sans www pour toutes les URL en php, html, fichiers css et les paramètres de l'application Fb.
Autre chose, si vous utilisez "/" à la fin des URL, vous devez ajouter cette URL aux paramètres de l'application URA de redirection OAuth valides . Exemple: - https://www.example.com /index.php/ si cette URL si vous utilisez dans l'URL de redirection, vous devez définir cela dans les paramètres de l'application.
J'espère que ce serait une aide.
Pour mon application de nœud,
"facebook": {
"clientID" : "##############",
"clientSecret": "####################",
"callbackURL": "/auth/facebook/callback/"
}
put callback URL relative
Mes URI de redirection OAuth comme suit
Assurez-vous que "/" at la fin de l'URI de redirection d'authentification de Facebook
Ces configurations ont fonctionné pour moi.
Changer de hauth.done = Facebook en hauth_done = Facebook dans les URI de redirection OAuth valides le corrigea pour moi.
Ok Tout d’abord, c’est un message d’erreur très clair. Il suffit de regarder autant de développeurs qui manquent cela, y compris mon auto. Regardez la capture d'écran ici s'il vous plaît.
ou allez simplement à cette URL ici (Remplacez YOUR_APP_ID par votre identifiant d'application lol):
https://developers.facebook.com/apps/YOUR_APP_ID/fb-login/settings/
Si vous travaillez sur localhost:3000
Assurez-vous d’avoir https://localhost:3000/auth/facebook/callback
Bien sûr, vous ne devez pas avoir le statut en direct (commutateur vert en haut à droite), mais dans mon cas, je suis en train de me déployer vers heroku et vais bientôt remplacer localhost:3000
par https://myapp.herokuapp.com/auth/facebook/callback
Bien sûr, je vais mettre à jour les URL dans Paramètres/Base et Paramètres/Avancé et ajouter une URL de politique de confidentialité dans la section de base.
Je suppose que vous avez correctement configuré les initialiseurs/inventeur.rb si vous utilisez inventé et que vous avez le bon facebook gem 'omniauth-facebook', '~> 4.0'
gem installé et gem 'omniauth', '~> 1.6'
, et que vous avez les colonnes nécessaires dans votre tableau des utilisateurs, telles que uid, image et fournisseur. C'est tout.
Nous avons eu le même problème, tel un cauchemar.
Assurez-vous que vos identifiants d’application et vos clés secrètes sont corrects. Si vous utilisez des applications de développement, de stockage intermédiaire et de production distinctes à des fins de test, les ID d'application et les clés secrètes sont tous différents pour chaque application. C'est souvent le problème.
Assurez-vous que l'URL de rappel est correctement définie dans votre fichier de configuration d'application (voir ci-dessous). Et ajoutez ensuite ceci comme même URL sous " Connexion Facebook " paramètres où il est indiqué " URI de redirection OAuth valides ". Cela devrait ressembler à ceci (selon votre environnement):
http://localhost/auth/facebook/callback
http://staging.example.com/auth/facebook/callback
http://example.com/auth/facebook/callback
Login Helper de votre site
$ loginUrl = $ helper-> getLoginUrl ('xyz.com/user_by_facebook/', $ permissions);
et dans le tableau de bord des applications facebook (sous l'onglet produits: Facebook Login )
Les URI de redirection OAuth valides doivent également être identiques à xyz.com/user_by_facebook/
comme mentionné précédemment en faisant la demande de web
Dans mon cas, j'intégrais la connexion à Facebook dans un didacticiel de l'application Rails. J'avais ajouté http: // localhost: 3000/adsf à mon adresse URI de redirection OAuth valide, mais l'application Rails ouvrait l'URL sous la forme http://0.0.0.0.03000 et tentait donc de rediriger vers http://0.0.0.0:3000/asdf . Après avoir ajouté http://0.0.0.0:3000/asdf à l'URI de redirection OAuth valide ou navigué vers http: // localhost: 3000/asdf , le système a fonctionné comme prévu.
Dans mon cas, l'URI, tel qu'il était défini sur FB, était correct, mais j'utilisais Spring Security et ajoutait ; jsessionid = 0B9A5E71DAA32A01A3CD351E6CA1FCDD à mon adresse URI, ce qui a provoqué la non-concordance.
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
Afin d'éviter la réécriture d'URL, j'ai ajouté disable-url-rewriting = "true" à la configuration de Spring Security, de cette façon:
<http auto-config="true" access-denied-page="/security/accessDenied" use-expressions="true"
disable-url-rewriting="true" entry-point-ref="authenticationEntryPoint"/>
Et cela a résolu mon problème.
Essayez d'ajouter http://openstrategynetwork.com/sigin-facebook à l'URL de redirection valide de Client OAuth avec votre propre URL de redirection.