5

Sto cercando di imparare l'integrazione di Facebook utilizzando il tutorial PacketCode disponibile su YouTube. Il codice funziona bene sul mio localhost (anche se testato collegandosi a Facebook). Ma quando ho cercato di eseguire il codice sul Hostinger.in host gratuito, mostra seguente errore:Integrazione di login di Facebook eccezione non rilevata "impossibile connettersi all'host"

Fatal error: Uncaught exception 'Facebook\FacebookSDKException' with message 'couldn't connect to host' in /home/u315632576/public_html/fblogin-basic-master/lib/Facebook/HttpClients/FacebookCurlHttpClient.php:142 Stack trace: #0 /home/u315632576/public_html/fblogin-basic-master/lib/Facebook/FacebookRequest.php(248): Facebook\HttpClients\FacebookCurlHttpClient->send(' https://graph.f ...', 'GET', Array) #1 /home/u315632576/public_html/fblogin-basic-master/lib/Facebook/FacebookRedirectLoginHelper.php(146): Facebook\FacebookRequest->execute() #2 /home/u315632576/public_html/fblogin-basic-master/index.php(54): Facebook\FacebookRedirectLoginHelper->getSessionFromRedirect() #3 {main} thrown in /home/u315632576/public_html/fblogin-basic-master/lib/Facebook/HttpClients/FacebookCurlHttpClient.php on line 142

Dopo questo ho provato a fare funzionare questo codice richiedendo un proprietario di ospite regolare sul suo server ospitato pagato una il codice funziona ancora bene su di esso. Quindi quale può essere il problema con il server host Hostinger.in gratuito?

Il codice che è:

/* INCLUSION OF LIBRARY FILEs*/ 
    require_once('lib/Facebook/FacebookSession.php'); 
    require_once('lib/Facebook/FacebookRequest.php'); 
    require_once('lib/Facebook/FacebookResponse.php'); 
    require_once('lib/Facebook/FacebookSDKException.php'); 
    require_once('lib/Facebook/FacebookRequestException.php'); 
    require_once('lib/Facebook/FacebookRedirectLoginHelper.php'); 
    require_once('lib/Facebook/FacebookAuthorizationException.php'); 
    require_once('lib/Facebook/GraphObject.php'); 
    require_once('lib/Facebook/GraphUser.php'); 
    require_once('lib/Facebook/GraphSessionInfo.php'); 
    require_once('lib/Facebook/Entities/AccessToken.php'); 
    require_once('lib/Facebook/HttpClients/FacebookCurl.php'); 
    require_once('lib/Facebook/HttpClients/FacebookHttpable.php'); 
    require_once('lib/Facebook/HttpClients/FacebookCurlHttpClient.php'); 

/* USE NAMESPACES */ 

    use Facebook\FacebookSession; 
    use Facebook\FacebookRedirectLoginHelper; 
    use Facebook\FacebookRequest; 
    use Facebook\FacebookResponse; 
    use Facebook\FacebookSDKException; 
    use Facebook\FacebookRequestException; 
    use Facebook\FacebookAuthorizationException; 
    use Facebook\GraphObject; 
    use Facebook\GraphUser; 
    use Facebook\GraphSessionInfo; 
    use Facebook\FacebookHttpable; 
    use Facebook\FacebookCurlHttpClient; 
    use Facebook\FacebookCurl; 

/*PROCESS*/ 

    //1.Stat Session 
    session_start(); 
    //2.Use app id,secret and redirect url 
    $app_id = 'xyz'; 
    $app_secret = 'abcd'; 
    $redirect_url='http://www.rohansanap.com/fblogin-basic-master/'; 

    //3.Initialize application, create helper object and get fb sess 
    FacebookSession::setDefaultApplication($app_id,$app_secret); 
    $helper = new FacebookRedirectLoginHelper($redirect_url); 
    $sess = $helper->getSessionFromRedirect(); 

    //4. if fb sess exists echo name 
     if(isset($sess)){ 
      //create request object,execute and capture response 
     $request = new FacebookRequest($sess, 'GET', '/me'); 
     // from response get graph object 
     $response = $request->execute(); 
     $graph = $response->getGraphObject(GraphUser::className()); 
     // use graph object methods to get user details 
     $name= $graph->getName(); 
     echo "hi $name"; 
    }else{ 
     //else echo login 
     echo '<a href='.$helper->getLoginUrl().'>Login with facebook</a>'; 
    } 

Edit 1: Ho già detto che lo stesso codice funziona bene su localhost. Ho appena realizzato che funziona alla prima esecuzione e se aggiorno la pagina dopo, viene visualizzato lo stesso errore!

+0

Perché non provi le app di esempio fornite da Facebook e facci sapere come vanno? Cosa stai cercando esattamente? Ci sono alcune esercitazioni di esempio fornite qui: https://developers.facebook.com/docs/reference/php/4.0.0. – deesarus

risposta

1

Il server probabilmente blocca le richieste CURL in uscita, contatta il tuo provider e chiedigli se può aprire l'accesso al server API di Facebook (graph.facebook.com). see this.

Problemi correlati