Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.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 Facebook JS API:ifUserConnected()死锁中的用户\u getInfo()_Javascript_Facebook - Fatal编程技术网

Javascript Facebook JS API:ifUserConnected()死锁中的用户\u getInfo()

Javascript Facebook JS API:ifUserConnected()死锁中的用户\u getInfo(),javascript,facebook,Javascript,Facebook,我试图把Facebook的连接按钮在网站上,一旦连接显示连接用户名。但由于某些原因,以下代码在第一次连接时进入无限循环,然后工作正常,除非我从我的facebook个人资料中删除此应用程序,这会再次导致冻结 以下是FB connect按钮上的代码单击: FB.Connect.requireSession(); 页面上直接显示以下代码: <script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoad

我试图把Facebook的连接按钮在网站上,一旦连接显示连接用户名。但由于某些原因,以下代码在第一次连接时进入无限循环,然后工作正常,除非我从我的facebook个人资料中删除此应用程序,这会再次导致冻结

以下是FB connect按钮上的代码单击:

FB.Connect.requireSession();
页面上直接显示以下代码:

<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US" type="text/javascript"></script>
<script type="text/javascript">
    FB.init("123", "/xd_receiver.htm");
    FB.ensureInit(function() {
        FB.Connect.ifUserConnected(function() {
            FB.Facebook.apiClient.users_getInfo(new Array(FB.Connect.get_loggedInUser()),new Array("name"), function(user, exec) {
            console.log("logged in:"+user[0].name);
            });

        }, function(){
            console.log("guest");
        });
    });
</script>

FB.init(“123”,“/xd_receiver.htm”);
FB.ensureInit(函数(){
FB.Connect.ifUserConnected(函数(){
FB.Facebook.apiClient.users_getInfo(新数组(FB.Connect.get_loggedInUser()),新数组(“名称”),函数(用户,执行){
console.log(“登录:+user[0].name”);
});
},函数(){
控制台日志(“来宾”);
});
});
如果我删除FB.Facebook.apiClient.users\u getInfo()它工作正常,但我需要以某种方式获取用户名。有什么建议吗


谢谢。

为此,您需要将username参数作为数组传递,如下所示:

FB.Facebook.apiClient.users_getInfo(new Array(FB.Connect.get_loggedInUser()),new Array("name","username"), function(user, exec) {
            console.log("logged in:"+user[0].name);
            });
你可以得到这样的结果

FB.Facebook.apiClient.users_getInfo(loggedInUsersId, ['first_name','last_name','email','sex','birthday','username'], function(result,ex){
       alert(result[0]['username']);
    });