完成FB.getLoginStatus我想返回一系列信息

这是我第一次使用FB Dev JS并且挣扎了一下。完成FB.getLoginStatus我想返回一系列信息

当前,当我尝试返回一组数据时,我一直在使用警报来测试。

当我提醒阵列中的某个项目时,警报会在FB.getLoginStatus函数结束时出现在警报之前。

我不能锻炼如何添加一个回调函数。

如何从FB.getLoginStatus返回数据?

目前我的设置是这样的:

window.fbAsyncInit = function() { 

FB.init({

appId : '514297358660223',

oauth : true,

status : true, // check login status

cookie : true, // enable cookies to allow the server to access the session

xfbml : true // parse XFBML

});

// AFTER FB INIT

// Get the status of the user

var arrStatus = facebookLoginStatus();

// IF the user is authorized, check to see whether they have voted.

//alert(arrStatus[0]);

if(arrStatus[0] != "error")

{

console.log("Check to see if they have voted");

checkRegisteredVote(arrStatus[0]);

}

//

};

// Load the SDK Asynchronously

(function(d){

var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];

if (d.getElementById(id)) {return;}

js = d.createElement('script'); js.id = id; js.async = true;

js.src = "//connect.facebook.net/en_US/all.js";

ref.parentNode.insertBefore(js, ref);

}(document));

// END ::: Load the SDK Asynchronously

function facebookLoginStatus()

{

var userarr = new Array();

var strStatus = "";

var intUID = 0;

FB.getLoginStatus(function(response)

{

alert(response.status);

if (response.status === 'connected')

{

strStatus = "connected";

intUID = response.authResponse.userID;

accessToken = response.authResponse.accessToken;

userarr[0] = userID;

userarr[1] = accessToken;

}

else

{

strStatus = "not connected";

userarr[0] = "error";

userarr[1] = "not connected";

}

}, true);

alert(userarr[0]);

return userarr;

}

任何帮助将真正理解。

回答:

你应该上述移动

alert(userarr[0]); 

3线 - INSIDE响应函数:

function(response) 

{

if (response.status === 'connected')

{

}

else

{

}

alert(userarr[0]);

}

也,这意味着

return userarr; 

是错误的 - 它会返回一些东西,尚未初始化。相反,在提醒后(userarr [0]);,你应该调用你的其他函数,通过userarr作为参数。

以上是 完成FB.getLoginStatus我想返回一系列信息 的全部内容, 来源链接: utcz.com/qa/263997.html

回到顶部