2012-03-16 91 views
2

1.什麼是登錄Facebook的基本步驟,當用戶使用Facebook登錄時如何從Facebook訪問其信息。如何在成功登錄後重定向。如何使用codeigniter與facebook登錄

2.當用戶第一次登錄時,我們會獲取該用戶的信息,下次登錄的過程是什麼,即用戶第一次登錄時該用戶的信息是什麼,下一次登錄的過程是什麼。

+1

你應該通過facebook api文檔,他們已經清楚所有這些過程。 – 2012-03-16 09:47:47

回答

2

嗨,你必須使用基本用戶身份驗證。

我用這個教程中我的應用程序使用Facebook的JDK和笨的: http://www.dannyherran.com/2011/02/facebook-php-sdk-and-codeigniter-for-basic-user-authentication/

但我建議你使用JavaScript SDK進行驗證。

<div id="fb-root"></div> 
<script> 
window.fbAsyncInit = function() { 
FB.init({ 
    appId  : '[ID]', // App ID 
    channelUrl : '[URL]', // Channel File 
    status  : true, // check login status 
    cookie  : true, // enable cookies to allow the server to access the session 
    xfbml  : true // parse XFBML 
}); 
var login = false; 
FB.getLoginStatus(function(response) { 
      if (response.status === 'connected') { 
       console.log('connected'); 
       login=true; 
       // the user is logged in and connected to your 
       // app, and response.authResponse supplies 
       // the user's ID, a valid access token, a signed 
       // request, and the time the access token 
       // and signed request each expire 
       var uid = response.authResponse.userID; 
       var accessToken = response.authResponse.accessToken; 
      } 
      else{ 
       FB.login(function(response) { 
       if (response.authResponse) { 
       console.log('Welcome! Fetching your information.... '); 
       FB.api('/me', function(response) { 
        console.log('Good to see you, ' + response.name + '.'); 
        if(login===false) 
        { 
         window.open("[APPLINKONFACEBOOK]", "_top"); 
        } 
        //window.location.href=window.location.href; 
        //FB.logout(function(response) { 
        //console.log('Logged out.'); 
        //}); 
       }); 
       } else { 
       console.log('User cancelled login or did not fully authorize.'); 
       }  
      }, {scope: 'email'}); 
      }}); 

// Additional initialization code here 
}; 
(function() { 
var e = document.createElement('script'); 
e.async = true; 
e.src = document.location.protocol + 
'//connect.facebook.net/en_US/all.js'; 
document.getElementById('fb-root').appendChild(e); 
    }()); 
    // Load the SDK Asynchronously 
(function(d){ 
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} 
js = d.createElement('script'); js.id = id; js.async = true; 
js.src = "//connect.facebook.net/en_US/all.js"; 
d.getElementsByTagName('head')[0].appendChild(js); 
}(document)); 

</script>