2015-12-23 15 views
7

Sto utilizzando Facebook PHP SDK per implementare l'accesso con Facebook. E voglio testarlo prima in locale. Ho creato un'applicazione di test e ho provato molte cose, ma ancora non funziona per me."L'URL specificato non è autorizzato nelle impostazioni OAuth del client" nell'account di Facebook su un host di prova

Nel mio locale mi hanno un host virtuale apache configurato in modo che posso accedere al mio web app locale con questo URL: http://www.myapplocal.com

Qui è l'errore che ottengo dopo la firma con Facebook:

Given URL is not whitelisted in Client OAuth Settings: This redirect failed because the redirect URI is not whitelisted in the app’s Client OAuth Settings. Make sure Client and Web OAuth Login are on and add all your app domains as Valid OAuth Redirect URIs. 

E qui è quello che ho nella sezione delle impostazioni OAuth:

Client OAuth Login: yes 
Web OAuth Login: yes 
Force Web OAuth Reauthentication: no 
Embedded Browser OAuth Login: no 
Valid OAuth redirect URIs: http://www.myapplocal.com/index.php/facebook-login-callback 
Login from Devices: no 

E qui è quello che ho nella sezione "Basic" (https://developers.facebook.com/apps/appid/settings/basic/):

Namespace: 
App domains: www.myapplocal.com 
Site Url: http://www.myapplocal.com/ 
+0

Buone modifiche. Penso che tu abbia fatto un lavoro molto migliore nel descrivere un problema specifico. Ho votato per riaprire e vedo che anche qualcun altro ha. Come sidenote, dovresti evitare di aggiungere cose come "grazie" e altri fluff. Non aggiunge nulla alla tua domanda e puoi mostrare apprezzamento per gli altri inviando di nuovo le risposte positive e accettando quello che meglio risolve il tuo problema. – skrrgwasme

+0

@skrrgwasme grazie per il vostro feedback e aiuto. –

risposta

10

Dopo aver eseguito l'accesso con google e aver effettuato l'accesso con twitter, non pensavo che l'accesso con Facebook gestisse gli URL in modo diverso. Il problema era che per facebook, se il sito funziona sia con www e senza di essa (http://example.com, http://www.example.com), è necessario immettere sia nelle impostazioni dell'applicazione (http://www.example.com/facebook-callback e http://example.com/facebook-callback)

+1

Cosa fare se lo sviluppo è su localhost? –

+0

Imposta alias sul tuo PC locale (in linux/mac è in/etc/hosts dove puoi specificare, che www.abcd.xyz andrà sul tuo computer locale e ogni volta che vai a questo indirizzo, arriverai a localhost .. –

+0

E se inserissi il mio indirizzo nelle impostazioni delle app e avessi un errore di convalida - Formato indirizzo IP non valido? Http://prntscr.com/av0qfw –

3

ho anche scoperto che http e https devono essere immesso nell'app in "URI di reindirizzamento OAuth validi" se il sito utilizza il certificato SSL.

+0

Vorrei poterti dare più voti per questo. combattendo per un po 'di tempo –

+0

@AbuSulaiman, grazie, sono felice che tu e altre persone stiate trovando utile questo –

+0

Vorrei aver letto questo e risparmiare le mie ore. – Ravian