Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何访问登录的G+;用户';s公共配置文件(至少用户ID)_Javascript_Google Plus - Fatal编程技术网

Javascript 如何访问登录的G+;用户';s公共配置文件(至少用户ID)

Javascript 如何访问登录的G+;用户';s公共配置文件(至少用户ID),javascript,google-plus,Javascript,Google Plus,我正在编写一个JS应用程序,需要使用登录的G+用户的公共配置文件图片 如果我有用户ID,我可以使用Google+API查询配置文件数据 但是,如何获取当前登录用户的用户ID?用户需要使用登录API将其Google+帐户连接到您的应用程序 见: 用户登录后,您可以使用用户ID“me”获取其数据: <button class="g-signin" data-scope="https://www.googleapis.com/auth/plus.login" d

我正在编写一个JS应用程序,需要使用登录的G+用户的公共配置文件图片

如果我有用户ID,我可以使用Google+API查询配置文件数据


但是,如何获取当前登录用户的用户ID?

用户需要使用登录API将其Google+帐户连接到您的应用程序

见:

用户登录后,您可以使用用户ID“me”获取其数据:

<button class="g-signin"
        data-scope="https://www.googleapis.com/auth/plus.login"
        data-clientid="{ YOUR_CLIENT_ID }"
        data-callback="onSignIn"
        data-theme="dark"
        data-cookiepolicy="single_host_origin"
        data-requestvisibleactions="http://schemas.google.com/AddActivity"
        data-width="wide">
</button>

(function() {
    window.onSignIn = function(authResult) {
        if (authResult.access_token) {
            console.log('success');
            gapi.client.load('plus','v1', function(){ 
                var request = gapi.client.plus.people.get({'userId' : 'me'});
                request.execute(function(response) {
                    console.log('ID: ' + response.id);
                    console.log('Display Name: ' + response.displayName);
                    console.log('Image URL: ' + response.image.url);
                    console.log('Profile URL: ' + response.url);
                });
            });
        } else if (authResult.error) {
            console.log('There was an error: ' + authResult.error);
        }
    };
    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);
})();

(功能(){
window.onSignIn=函数(authResult){
if(authResult.access\u令牌){
console.log('success');
load('plus','v1',function(){
var request=gapi.client.plus.people.get({'userId':'me'});
请求.执行(函数(响应){
console.log('ID:'+response.ID);
console.log('Display Name:'+response.displayName);
log('Image URL:'+response.Image.URL);
log('Profile URL:'+response.URL);
});
});
}else if(authResult.error){
console.log('出现错误:'+authResult.error);
}
};
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);
})();
见:


下面是一个工作示例:

用户需要使用登录API将其Google+帐户连接到您的应用程序

见:

用户登录后,您可以使用用户ID“me”获取其数据:

<button class="g-signin"
        data-scope="https://www.googleapis.com/auth/plus.login"
        data-clientid="{ YOUR_CLIENT_ID }"
        data-callback="onSignIn"
        data-theme="dark"
        data-cookiepolicy="single_host_origin"
        data-requestvisibleactions="http://schemas.google.com/AddActivity"
        data-width="wide">
</button>

(function() {
    window.onSignIn = function(authResult) {
        if (authResult.access_token) {
            console.log('success');
            gapi.client.load('plus','v1', function(){ 
                var request = gapi.client.plus.people.get({'userId' : 'me'});
                request.execute(function(response) {
                    console.log('ID: ' + response.id);
                    console.log('Display Name: ' + response.displayName);
                    console.log('Image URL: ' + response.image.url);
                    console.log('Profile URL: ' + response.url);
                });
            });
        } else if (authResult.error) {
            console.log('There was an error: ' + authResult.error);
        }
    };
    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);
})();

(功能(){
window.onSignIn=函数(authResult){
if(authResult.access\u令牌){
console.log('success');
load('plus','v1',function(){
var request=gapi.client.plus.people.get({'userId':'me'});
请求.执行(函数(响应){
console.log('ID:'+response.ID);
console.log('Display Name:'+response.displayName);
log('Image URL:'+response.Image.URL);
log('Profile URL:'+response.URL);
});
});
}else if(authResult.error){
console.log('出现错误:'+authResult.error);
}
};
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);
})();
见:


下面是一个工作示例:

Thank@imcg我让用户登录正常,但当我在成功回调中运行您的代码(上面)时,我得到:“Uncaught TypeError:无法读取未定义的属性'people'”我需要库来支持此请求吗?任何想法都会大有帮助。。。我只知道我错过了一些明显的东西?!?我已经使用clientid使quickstart应用程序正常工作。所以我会试着从那里解决问题。是的,我错过了一步(你可能已经猜到了)。做了一个工作小提琴:去更新答案。完美!谢谢@imcg:DThanks@imcg我让用户登录正常,但当我在成功回调中运行您的代码(如上)时,我得到:“未捕获类型错误:无法读取未定义的属性'people'”我是否需要库来支持此请求?任何想法都会大有帮助。。。我只知道我错过了一些明显的东西?!?我已经使用clientid使quickstart应用程序正常工作。所以我会试着从那里解决问题。是的,我错过了一步(你可能已经猜到了)。做了一个工作小提琴:去更新答案。完美!谢谢@imcg:D