启动Google登录按钮点击

时间:2015-09-17 06:42:05

标签: javascript google-plus google-signin

您好我正在使用google api登录我的网络应用程序。现在它的工作正常。但问题是当我进入登录页面时,sigin会自动启动。但我不希望这样。我希望用户先点击登录按钮然后开始流程。

我正在使用下面的按钮

<div class="g-signin2" data-onsuccess="onSignIn"></div>

google log in引用。

2 个答案:

答案 0 :(得分:5)

使用“ attachClickHandler”启动Google登录。

<script src="https://apis.google.com/js/client:platform.js?onload=init" async defer></script>
<script>
   function init() {
        gapi.load('auth2', function() {
            auth2 = gapi.auth2.init({
                client_id: '*************.apps.googleusercontent.com',
                cookiepolicy: 'single_host_origin',
                scope: 'profile email'
            });
            element = document.getElementById('glogin');
            auth2.attachClickHandler(element, {}, onSignUp, onFailure);
        });
    }
    function onSignUp(googleUser) {
      var profile = googleUser.getBasicProfile();
    }
</script>

答案 1 :(得分:1)

最好的方法是使用Java Script登录谷歌,我发现了。

使用

script type="text/javascript">
      (function() {
       var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
       po.src = 'https://apis.google.com/js/client.js?onload=onLoadCallback';
       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
     })();
</script>

初始化js。最后调用以下方法登录用户

function login() 
{
  var myParams = {
    'clientid' : 'YOUR_CLIENT_ID.apps.googleusercontent.com', //You need to set client id
    'cookiepolicy' : 'single_host_origin',
    'callback' : 'loginCallback', //callback function
    'approvalprompt':'force',
    'scope' : 'https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/plus.profile.emails.read'
  };
  gapi.auth.signIn(myParams);
}

通过使用这个我能够解决这个问题。现在用户需要点击登录才能登录