2015-02-06 55 views
0

我使用G + s oAuth 2.0 JS功能。如何從Google+ OAuth JS登錄獲取user_email?

這是我的腳本:

<script> 
    function signinCallback(authResult) { 
     if (authResult['access_token']) { 
      // Autorisierung erfolgreich 
      // Nach der Autorisierung des Nutzers nun die Anmeldeschaltfläche ausblenden, zum Beispiel: 
      document.getElementById('signinButton').setAttribute('style', 'display: none'); 
      console.log(authResult); 
     } else if (authResult['error']) { 
      // Es gab einen Fehler. 
      // Mögliche Fehlercodes: 
      // "access_denied" – Der Nutzer hat den Zugriff für Ihre App abgelehnt. 
      // "immediate_failed" – Automatische Anmeldung des Nutzers ist fehlgeschlagen. 
      // console.log('Es gab einen Fehler: ' + authResult['Fehler']); 
     } 
    } 
</script> 

我的按鈕是這樣的:

<span id="signinButton"> 
          <span 
          class="g-signin" 
          data-callback="signinCallback" 
          data-clientid="XXXXX" 
          data-cookiepolicy="single_host_origin" 
          data-requestvisibleactions="http://schema.org/AddAction" 
          data-scope="https://www.googleapis.com/auth/plus.login"> 
          </span> 
         </span> 

爲什麼在執行console.log(authResult)犯規給我回郵件?我只是找回了令牌的一些背景信息...

回答

0

因爲它只是證書。要獲取關於特定用戶的個人資料信息,您需要向people.get發出API請求。

像這樣的東西應該與gapi.client.request一起工作,但你可能需要玩path,你可能需要手動添加access_token到請求。

gapi.client.request({ 
    'path': 'people/me', 
    'method': 'GET', 
    'callback': function(person) { 
     console.log(person); 
    }, 
}); 
相關問題