Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.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 谷歌登录时未触发回调 函数onSignIn(谷歌用户){ console.log(“成功烧焦!!!”; }_Javascript_Google Signin_Google Authentication_Google Api Js Client - Fatal编程技术网

Javascript 谷歌登录时未触发回调 函数onSignIn(谷歌用户){ console.log(“成功烧焦!!!”; }

Javascript 谷歌登录时未触发回调 函数onSignIn(谷歌用户){ console.log(“成功烧焦!!!”; },javascript,google-signin,google-authentication,google-api-js-client,Javascript,Google Signin,Google Authentication,Google Api Js Client,通过上面的内容,我可以看到一个谷歌登录按钮,打开一个弹出窗口,接受凭证并让我登录。但是我希望登录成功时会触发onSignIn方法,但这不会发生。 有人对此有什么建议吗 使用safari、chrome和firefox浏览器在osx上的apache服务器上试用了它检查授权重定向URI是否指向运行JavaScript的源?您应该在head标记中添加platform.js脚本 <html> <head> <meta name="google-signin-clien

通过上面的内容,我可以看到一个谷歌登录按钮,打开一个弹出窗口,接受凭证并让我登录。但是我希望登录成功时会触发onSignIn方法,但这不会发生。 有人对此有什么建议吗


使用safari、chrome和firefox浏览器在osx上的apache服务器上试用了它

检查授权重定向URI是否指向运行JavaScript的源?

您应该在head标记中添加platform.js脚本

<html>
<head>
    <meta name="google-signin-client_id" content="MY_CLIENT_ID.apps.googleusercontent.com" />
</head>
<body>
    <div class="g-signin2" data-onsuccess="onSignIn"></div>
    <script src="https://apis.google.com/js/platform.js" async defer></script>
    <script type="text/javascript">
            function onSignIn(googleUser) {
                    console.log("Succesfully Singed in!!!");
            }
    </script>
</body>
</html>

函数onSignIn(谷歌用户){
console.log(“成功烧焦!!!”;
}

在我的例子中,成功事件没有触发,因为我试图从页面上包含的外部js文件连接函数。出于某种原因,只有当连接的函数出现在同一页上时,回调才会起作用


以前从没见过这样的事。我想知道他们是如何检查的。

在我的例子中:
回调函数在body标签中

回调函数不工作如果它在body标记中,请将其移动到head标记


现在回答这个问题已经很晚了,但我想有人需要这个:

  • 记住在谷歌控制台添加源URI
  • 如果在终端上看不到onSignIn的任何内容,请在浏览器的控制台上进行检查

第一个脚本标记格式不正确。您在控制台上看到任何错误吗?没有错误。甚至onfailure等方法也不会被触发。我应该包括除platform.js之外的任何API吗?你包括了吗?你有没有可能找到答案?我看到了一个非常类似的问题。如果我第一次与用户登录,onSignIn不会被调用。但是,当我注销该用户并使用完全相同的用户登录时,它会被调用。否。我没有设置任何重定向URL。这有关系吗?指南上说它可以是空的。如果您指定localhost,您可能需要检查“授权的JavaScript源代码”,您还需要指定一个端口。示例:重定向uri是可选的,但源代码是必需的。在我的情况下,这样做的原因是浏览器扩展Adblock/Ghostery。我需要禁用它才能得到响应。我必须禁用隐私獾。
<html>
<head>
<meta name="google-signin-client_id" content="MY_CLIENT_ID.apps.googleusercontent.com" />
<script src="https://apis.google.com/js/platform.js" async defer>    </script>
</head>
<body>
<div class="g-signin2" data-onsuccess="onSignIn"></div>

<script type="text/javascript">
        function onSignIn(googleUser) {
                console.log("Succesfully Singed in!!!");
        }
</script>
</body>
</html>