Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌登录按钮电子邮件字段_Javascript_Jquery_Google Plus - Fatal编程技术网

Javascript 谷歌登录按钮电子邮件字段

Javascript 谷歌登录按钮电子邮件字段,javascript,jquery,google-plus,Javascript,Jquery,Google Plus,我已经在教程中设置了简单的Google登录按钮,我想知道如何执行以下操作: 限制电子邮件字段中除@domain.com以外的所有域 所以johndoe@gmail.com不起作用,但是johndoe@twitter.com将被接受。有道理吗 如果用户已经登录到Google帐户,是否可以强制用户再次登录 以下是我的Javascript/jQuery代码: <script type="text/javascript"> (function() { var po

我已经在教程中设置了简单的Google登录按钮,我想知道如何执行以下操作:

限制电子邮件字段中除@domain.com以外的所有域 所以johndoe@gmail.com不起作用,但是johndoe@twitter.com将被接受。有道理吗

如果用户已经登录到Google帐户,是否可以强制用户再次登录

以下是我的Javascript/jQuery代码:

<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:plusone.js';
       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
     })();


  function signinCallback(authResult) {
  if (authResult['access_token']) {
    // Successfully authorized
    // Hide the sign-in button now that the user is authorized, for example:
    document.getElementById('signinButton').setAttribute('style', 'display: none');

    $('.inline-field-title').hide();


  } else if (authResult['error']) {
    // There was an error.
    // Possible error codes:
    //   "access_denied" - User denied access to your app
    //   "immediate_failed" - Could not automatically log in the user
    // console.log('There was an error: ' + authResult['error']);
  }
}


  function disconnectUser(access_token) {
  var revokeUrl = 'https://accounts.google.com/o/oauth2/revoke?token=' +
      access_token;

  // Perform an asynchronous GET request.
  $.ajax({
    type: 'GET',
    url: revokeUrl,
    async: false,
    contentType: "application/json",
    dataType: 'jsonp',
    success: function(nullResponse) {
      // Do something now that user is disconnected
      // The response is always undefined.
    },
    error: function(e) {
      // Handle the error
      // console.log(e);
      // You could point users to manually disconnect if unsuccessful
      // https://plus.google.com/apps
    }
  });

}
// Could trigger the disconnect on a button click

$('#revokeButton').click(disconnectUser);


</script>

Ad 1您必须在手动登录后检查电子邮件,如果电子邮件与您正在查找的任何域不匹配,则必须相应地进行操作

为此,您必须请求一个附加范围https://www.googleapis.com/auth/userinfo.email 您可以在登录按钮标记的数据范围参数中定义,并在身份验证后对其执行身份验证请求https://www.googleapis.com/oauth2/v2/userinfo 将在响应中返回电子邮件地址

有关示例代码,请参见

Ad 2“登录”按钮接受参数data approvalprompt=force,该参数将显示身份验证对话框,并允许用户在每次登录尝试时切换到不同的帐户


参见

广告1,您必须在手动登录后检查电子邮件,如果电子邮件与您要查找的任何域不匹配,则必须采取相应措施

为此,您必须请求一个附加范围https://www.googleapis.com/auth/userinfo.email 您可以在登录按钮标记的数据范围参数中定义,并在身份验证后对其执行身份验证请求https://www.googleapis.com/oauth2/v2/userinfo 将在响应中返回电子邮件地址

有关示例代码,请参见

Ad 2“登录”按钮接受参数data approvalprompt=force,该参数将显示身份验证对话框,并允许用户在每次登录尝试时切换到不同的帐户