ログイン システムを作成するために Google サインイン チュートリアルに従っていますが、サインインを選択するためのウィジェットをロードするサインイン ボタンがあるところまで来ました。クリックすると、次の関数がロードされます。
function onSignIn(googleUser) {
var profile = googleUser.getBasicProfile();
console.log('ID: ' + profile.getId()); // Do not send to your backend! Use an ID token instead.
console.log('Name: ' + profile.getName());
console.log('Image URL: ' + profile.getImageUrl());
console.log('Email: ' + profile.getEmail());
}
ただし、アカウントを選択してサインインすると、何も起こりません。開発者コンソールで「googleUser」と入力すると、次のように表示されます。
Uncaught ReferenceError: googleUser が定義されていません
これが私のコードのすべてです:
<!doctype html>
<html>
<head>
<script src="https://apis.google.com/js/platform.js" async defer></script>
<meta name="google-signin-client_id" content="451815931731-u24ino5uecga1arf65814fd72201fcmu.apps.googleusercontent.com">
<title>S6C Admin Panel</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<script src="../bower_components/webcomponentsjs/webcomponents.js"></script>
<link rel="import" href="imports.html">
<link rel="stylesheet" href="css/signin.css">
</head>
<body unresolved>
<core-toolbar>
<span flex>S6C Admin Panel</span>
<core-icon-button onclick="takeBack()" icon="arrow-back">Back to S6C Website</core-icon-button>
</core-toolbar>
<img id="logo" src="../s6clogo.jpg"></img>
<center>
<div class="g-signin2" data-onsuccess="onSignIn"></div>
</center>
<script>
function takeBack(){
window.location.href = "http://s6c.org";
}
function onSignIn(googleUser) {
var profile = googleUser.getBasicProfile();
console.log('ID: ' + profile.getId()); // Do not send to your backend! Use an ID token instead.
console.log('Name: ' + profile.getName());
console.log('Image URL: ' + profile.getImageUrl());
console.log('Email: ' + profile.getEmail());
}
</script>
</body>
</html>
スニペットを実行しても機能しないことに注意してください