TypeError: gapi.auth2 undefined
TypeError: gapi.auth2 undefined
我完全按照集成 google 登录的说明进行操作:
https://developers.google.com/identity/sign-in/web/sign-in#specify_your_apps_client_id
登录有效,但注销在行中出现 javascript 错误:
var auth2 = gapi.auth2.getAuthInstance();
错误是:
gapi.auth2 undefined
我按照说明包含 google 平台库:
<script type='text/javascript' src='https://apis.google.com/js/platform.js' async defer></script>
为什么不起作用?
登录和退出是否在同一页面上使用?
Div g-signin2 加载并初始化 gapi.auth2,因此只要它们在同一页面上,它就应该可以工作。
如果注销在单独的页面上,您应该手动加载和初始化 gapi.auth2 库。
完整示例(您必须将 YOUR_CLIENT_ID 替换为实际的 client_id):
<html>
<head>
<meta name="google-signin-client_id" content="YOUR_CLIENT_ID">
</head>
<body>
<script>
function signOut() {
var auth2 = gapi.auth2.getAuthInstance();
auth2.signOut().then(function () {
console.log('User signed out.');
});
}
function onLoad() {
gapi.load('auth2', function() {
gapi.auth2.init();
});
}
</script>
<a href="#" onclick="signOut();">Sign out</a>
<script src="https://apis.google.com/js/platform.js?onload=onLoad" async defer></script>
</body>
</html>
我完全按照集成 google 登录的说明进行操作:
https://developers.google.com/identity/sign-in/web/sign-in#specify_your_apps_client_id
登录有效,但注销在行中出现 javascript 错误:
var auth2 = gapi.auth2.getAuthInstance();
错误是:
gapi.auth2 undefined
我按照说明包含 google 平台库:
<script type='text/javascript' src='https://apis.google.com/js/platform.js' async defer></script>
为什么不起作用?
登录和退出是否在同一页面上使用? Div g-signin2 加载并初始化 gapi.auth2,因此只要它们在同一页面上,它就应该可以工作。
如果注销在单独的页面上,您应该手动加载和初始化 gapi.auth2 库。
完整示例(您必须将 YOUR_CLIENT_ID 替换为实际的 client_id):
<html>
<head>
<meta name="google-signin-client_id" content="YOUR_CLIENT_ID">
</head>
<body>
<script>
function signOut() {
var auth2 = gapi.auth2.getAuthInstance();
auth2.signOut().then(function () {
console.log('User signed out.');
});
}
function onLoad() {
gapi.load('auth2', function() {
gapi.auth2.init();
});
}
</script>
<a href="#" onclick="signOut();">Sign out</a>
<script src="https://apis.google.com/js/platform.js?onload=onLoad" async defer></script>
</body>
</html>