2

我正在使用以下脚本通过谷歌对用户进行身份验证,它工作正常,但问题是,如果不点击 g+ 登录按钮,它会从浏览器获取谷歌会话并验证用户身份。如何在按钮点击时制作它。

(function() {
    var po = document.createElement('script');
    po.type = 'text/javascript'; po.async = true;
    po.src = 'https://plus.google.com/js/client:plusone.js';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(po, s);
  })();

有什么方法可以在单击按钮时运行此功能。?

4

2 回答 2

1

我更喜欢使用 Google Javascript Api。

<a id="googleLogin"> Login with Google</a>

<script src="https://apis.google.com/js/client.js?onload=handleClientLoad"></>

<script type="text/javascript">
$(document).ready(function(){
  $("#googleLogin").bind("click", function(){
    gapi.auth.authorize({client_id: YOUR_CONSUMER_KEY, 
      immediate: false,
      scope: "https://www.googleapis.com/auth/plus.me https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email"
    }, function(authResult){
          YOUR CODE HERE 
       });
  });
});
</script>
于 2013-10-25T07:28:22.180 回答
0

HTML

<input id="authBtn" type="button" value="authenticate me"/>

JS

document.getElementById("authBtn").addEventListener("click", function(e) {
    var po = document.createElement('script');

    po.type = 'text/javascript'; po.async = true;
    po.src = 'https://plus.google.com/js/client:plusone.js';

    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(po, s);
});
于 2013-08-15T11:56:23.210 回答