1

我正在查看所有使用FB進入網站的用戶,在purushotam的幫助下(請參閱我的其他問題)能夠繼續。Facebook API登錄記錄

這裏是我的新問題: 1)如何獲得/使用Facebook提供的按鈕。原因是我希望用戶獲得相同的用戶體驗。 (facebook按鈕藍色按鈕) 2)一旦用戶登錄,我想發送一個提醒,然後去我重新定向的網站(例如我有stackoverflow)。因爲FB是非阻塞異步的,所以在FB返回網站重定向的值之前我會看到。如何解決這個問題。 3)當用戶試圖登錄我不想在FB popup-我想有一個新的頁面(就像計算器登錄的FB登陸)我該怎麼做..

<body> 
     <div id="fb-root"></div> 
<script> 

     window.fbAsyncInit = function() { 
      FB.init({appId: 'xxxx', status: true, cookie: true, xfbml: true}); 

     }; 
     (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); 
     }()); 

    function fetchUserDetail() 
    { 
     FB.api('/me', function(response) { 
       alert("Name: "+ response.name + "\nFirst name: "+ response.first_name + "ID: "+response.id); 
      }); 
     window.location.href = 'http://www.stackoverflow.com'; 
    } 

    function checkFacebookLogin() 
    { 
     FB.getLoginStatus(function(response) { 
      if (response.status === 'connected') { 
      fetchUserDetail(); 
      } 
      else 
      { 
      initiateFBLogin(); 
      } 
     }); 
    } 

    function initiateFBLogin() 
    { 
     FB.login(function(response) { 
      fetchUserDetail(); 
     }); 
    } 
    </script> 


<input type="button" value="Sign in using Facebook" onclick="checkFacebookLogin();"/> 


</body> 

回答

1

1 )我如何獲得/使用Facebook提供的按鈕。原因是我希望用戶獲得相同的用戶體驗。 (Facebook的按鈕,藍色按鈕)

https://developers.facebook.com/docs/reference/plugins/login/https://www.facebook.com/brandpermissions/logos.php

2)一旦用戶登錄時比,我想送一個警報,比去網站我重新定向(例如,在我有stackoverflow)。因爲FB是非阻塞異步的,所以在FB返回網站重定向的值之前我會看到。如何解決這個問題。

對不起,我真的不明白你在問什麼。請嘗試更具體。

3)當用戶試圖登錄我不想在FB popup-我想有一個新的頁面(就像計算器登錄的FB登陸)我該怎麼做..

然後不要使用FB.login,而是將用戶重定向到Auth對話框的URL;請參閱https://developers.facebook.com/docs/authentication/client-side/#no-jssdk

+0

謝謝您關於2)的回覆如果您運行程序(代碼在問題中)。你會看到userAlert沒有被執行。它直接進入stackoverflow.I想要打印的警報比去stackoverflow website.regarding 3)FB的例子,我們有window.open和FB頁面打開在一個新的窗口..我想要相同的頁面定向FB ..once驗證它應該回來(像一個stackoverflow相同的用戶體驗) – 2012-08-07 18:35:17

+0

_「你會看到,userAlert沒有執行。它直接進入到stackoverflow中。「_ - 當然,它確實如此,因爲FB.api是一個_asynchronous_方法 - 代碼執行不會」等「直到完成,而是直接進行。 – CBroe 2012-08-07 21:08:23

+0

是的,這是問題,我的問題是:-)。我希望用戶使用FB登錄登錄到我的網站。一旦他們登錄,我想記錄到我的數據庫(所有頁面內的變化根據用戶誰在)。同時,一旦他被認證,我想進入我的門戶網站(在這種情況下,堆棧overflow.com)。我明白這是異步如何解決這個問題......我知道很多人使用FB登錄。如何解決這個問題 – 2012-08-07 21:40:36