我使用以下代码在使用 google plus 的网站上注册。
使用以下代码,我成功登录系统,但是如何获取用户数据或gplus id?
<html>
<head>
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/client:plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
function signinCallback(authResult) {
if (authResult['status']['signed_in']) {
console.log(authResult);
document.getElementById('signinButton').setAttribute('style', 'display: none');
} else {
console.log('Sign-in state: ' + authResult['error']);
}
}
</script>
</head>
<body>
<div id="container">
<div id="body">
<span id="signinButton">
<span
class="g-signin"
data-callback="signinCallback"
data-clientid="565656566-u*********.apps.googleusercontent.com"
data-cookiepolicy="single_host_origin"
data-requestvisibleactions="http://schema.org/AddAction"
data-scope="https://www.googleapis.com/auth/plus.login">
</span>
</span>
</div>
</div>
</body>
</html>
提前致谢。
最佳答案
我们可以使用访问 token 获取用户数据,只需进行ajax调用即可完成。登录成功后使用以下代码获取用户数据。
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/client:plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
function signinCallback(authResult) {
if (authResult['status']['signed_in']) {
console.log(authResult);
document.getElementById('signinButton').setAttribute('style', 'display: none');
/* get google plus id */
$.ajax({
type: "GET",
url: "https://www.googleapis.com/oauth2/v2/userinfo?access_token="+access_token
})
.done(function( data ){
console.log(data);
});
} else {
console.log('Sign-in state: ' + authResult['error']);
}
}
</script>
如果您尝试获取用户电子邮件地址,请使用以下命令更改 ajax:
$.ajax({
type: "GET",
url: "https://www.googleapis.com/plus/v1/people/me?access_token="+access_token
})
see this link for more deatils about get user data using google plus api
关于javascript - 登录google plus api后如何获取用户数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24863652/