2016-10-14 10 views
0

ユーザーIDとメールアドレスなどのユーザーのプロフィールを取得したいのですが、それを行う方法は多々ありましたが、 "TypeError :googleUser.getBasicProfileは、私はGoogleの文書の指示に従っ機能」google api-google基本プロフィールにアクセスできません

ではありませんが、私はまだエラーが出る:

enter image description here

をし、ここでのすべてのコードです:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>googleSignin</title> 
    <meta name="google-signin-requestvisibleactions" content="https://schema.org/AddAction" /> 
    <meta name="google-signin-scope" content="https://www.googleapis.com/auth/plus.login" /> 
    <meta name="google-signin-client_id" content="589020135825-sbg93psr9i0v8gq6ajm7mv9et38o9ts2.apps.googleusercontent.com"> 

</head> 


<body> 



<div class="g-signin2" data-onsuccess="onSignIn" data-theme="dark" onclick="onSignIn('googleUser')"></div> 

<script>' 


    function onSignIn(googleUser) { 


     // Useful data for your client-side scripts: 
     var profile = googleUser.getBasicProfile(); 
     var user_name = profile.getName(); 
     alter(user_name); 

     console.log("ID: " + profile.getId()); 
     console.log('Full Name: ' + profile.getName()); 
     console.log('Given Name: ' + profile.getGivenName()); 
     console.log('Family Name: ' + profile.getFamilyName()); 
     console.log("Image URL: " + profile.getImageUrl()); 
     console.log("Email: " + profile.getEmail()); 

     //The ID token you need to pass to your backend: 
     //var id_token = googleUser.getAuthResponse().id_token; 
     //console.log("ID Token: " + id_token); 

    } 

    function signOut(){ 
     var auth2 = gapi.auth2.getAuthInstance(); 
     auth2.signOut().then(function() { 
      console.log('User signed out!'); 
     }); 
    } 

    function onLoad() { 
     gapi.load('auth2', function() { 
      var auth2 = gapi.auth2.init(); 
      auth2.then(function(){ 
       //current values 
       var isSignedIn = auth2.isSignedIn.get(); 
       var currentUser = auth2.currentUser.get(); 

       if (!isSignedIn) { 
        //rendering it 
        gapi.signin2.render('google-signin-button', { 
         'onsuccess': 'onSignIn' 
        }); 
       } 
      }); 
     }); 
    } 

</script> 
<a href="#" onclick="signOut();">Sign out</a> 

<script src="https://apis.google.com/js/platform.js" async defer></script> 
</body> 
</html> 
+0

https://developers.google.com/identity/sign-in/web/はそれのすべてのコードで見るだけでなく、あなたにスクリプトを延期することがあります: – hsbzzhz

答えて

0

コードとこの例を比較すると、ボタンdivにonclickハンドラは必要ありません。それを介して渡すparementerは、エラーを示す文字列です。 platform.jsを整理してみましょう呼び出す

あなたはasunc追加

がここ

関連する問題