我正在尝试熟悉Google API。
为了研究登录过程,我构建了一个简单的网页,使登录按钮根据 https://developers.google.com/+/web/signin/add-button 工作,并且按钮正确呈现。但是,它不处于活动状态 - 它不会对点击做出反应,浏览器控制台中也没有错误。
我不是从 Web 服务器运行页面,而是直接从磁盘打开它。 即 URL 类似于 file:///c:/projects/GooglePlusClientJS/google_plus_js.html
.
页面代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<script src="https://apis.google.com/js/client:platform.js" async defer></script>
<script type="text/javascript">
function signinCallback(authResult) {
if (authResult['status']['signed_in']) {
// Update the app to reflect a signed in user
// Hide the sign-in button now that the user is authorized, for example:
console.log("Signed in");
document.getElementById('signinButton').setAttribute('style', 'display: none');
} else {
// Update the app to reflect a signed out user
// Possible error values:
// "user_signed_out" - User is signed-out
// "access_denied" - User denied access to your app
// "immediate_failed" - Could not automatically log in the user
console.log('Sign-in state: ' + authResult['error']);
}
}
</script>
<title>GooglePlus Test</title>
</head>
<body>
<span id="signinButton">
<span
class="g-signin"
data-callback="signinCallback"
data-clientid="my_client_id.apps.googleusercontent.com"
data-cookiepolicy="none"
data-requestvisibleactions="http://schema.org/AddAction"
data-scope="https://www.googleapis.com/auth/plus.login">
</span>
</span>
</body>
</html>
我做错了什么?是直接从磁盘打开它引起的吗?如果是这样,为什么?
谢谢。
编辑 1:当从 Web 服务器运行时,页面似乎工作正常,正在显示登录对话框。谁能阐明为什么会发生这种情况?
我已经复制了您的代码并且工作正常,我所要做的就是显然更改示例clientid以适应我的,您是否也这样做了?我想是的,但永远不知道...
我不从 Web 服务器运行页面,而是直接从磁盘打开它
我不是专家,但它不起作用,你必须为它服务,也许用 xampp......