2017-09-23 59 views
-1

我的代碼如下所示:Facebook登錄不給我用戶的電子郵件在成功應對

$scope.FBLogin = function() { 
       FB.login(function(response) { 
        if (response.authResponse) { 
         FB.api('/me?fields=first_name,email', function(response) { 
          console.log("good to see you" + JSON.stringify(response)); 

        } else { 
         console.log("user cancelled login"); 
        } 
       }); 
      }; 

在我只geeting用戶名和ID的響應。我沒有收到用戶電子郵件字段。那麼這段代碼中有什麼缺失?

這是我使用

$window.fbAsyncInit = function() { 
      FB.init({ 
       appId: 'id', 
       autoLogAppEvents: true, 
       xfbml: true, 
       version: 'v2.10' 
      }); 
      FB.AppEvents.logPageView(); 
     }; 

     (function(d, s, id) { 
      var js, fjs = d.getElementsByTagName(s)[0]; 
      if (d.getElementById(id)) { return; } 
      js = d.createElement(s); 
      js.id = id; 
      js.src = "//connect.facebook.net/en_US/sdk.js"; 
      fjs.parentNode.insertBefore(js, fjs); 
     }(document, 'script', 'facebook-jssdk')); 
+0

當然,還有一些缺失,你沒有要求用戶訪問他們的電子郵件的權限。 – CBroe

+0

@CBroe我已經按照所有步驟(我認爲)爲Facebook登錄。那麼你能否詳細說明我應該在哪裏詢問用戶的電子郵件許可? –

+0

https://developers.facebook.com/docs/facebook-login/permissions/requesting-and-revoking – CBroe

回答

0

我在我的應用程序中的漏洞。在我的測試用戶中,我使用默認的電子郵件ID,但沒有v2.10的支持。所以我創建了一個支持v2.10的新版本,然後開始給我email_id作爲迴應。

相關問題