我试图关注Google's developer tutorial的示例示例 使用更新的 chrome (版本38.0)
但似乎 gapi.auth函数从未达到过他们的回调
以下是演示它的代码示例:
<!doctype html>
<html>
<head>
<title>Google API Client test</title>
</head>
<body>
here will be the use of Oauth 2.0
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
googleApiClientReady = function() {
window.setTimeout(checkAuth, 1);
}
function checkAuth() {
gapi.auth.authorize({
client_id: 'XXX',
scope: 'https://www.googleapis.com/auth/youtube',
immediate: true
}, handleAuthResult);
}
function handleAuthResult(authResult) {
if (authResult && !authResult.error) {
alert('gapi.auth return successfully');
} else {
alert('gapi.auth return with error');
}
}
</script>
<script src="https://apis.google.com/js/client.js?onload=googleApiClientReady"></script>
</body>
</html>
当我在&#39; HandleAuthResult&#39;的2个可选警报中运行上述html + JS文件 - 无时屏幕上显示 >> - 意味着此函数未被&#39; gapi.auth.authorize&#39;
回调有没有人设法正确使用这个库?
答案 0 :(得分:0)
首先,您需要检查chrome是否阻止了您的弹出窗口。这是因为弹出式打开代码不在点击处理程序中。
然后你应该打开chrome的开发者控制台并检查&#34; Console&#34;错误标签。
另外,您应该在Google Developer Console中指定您的网页所在的域名和端口,如下所示:
我能够登录谷歌并获得成功回拨 使用你的代码,但仅在删除&#34; immediate:true&#34;选项。 我不知道为什么,但我得到&#34; immediate_failed&#34;错误。