【发布时间】:2010-03-29 23:52:38
【问题描述】:
我正在尝试在 Facebook JavaScript 连接 API 方法上创建包装函数。
我的问题是我无法在 Facebook API FB_RequireFeatures 方法中返回值。
我希望我的 isFBConnected() 函数根据我是否登录 Facebook 返回 true 或 false。
发生的情况是,当我返回 true 时,它会将其返回给子函数,但这是有道理的,但我的全局“登录”变量并未设置为 true。
我已尝试设置超时以等待 Facebook 连接完成执行,但仍然没有成功。
欢迎任何帮助或其他解决方案!
我的 isFBConnected 包装函数如下所述:
函数是FBConnected(){
var api_key = '<?=$this->apiKey?>';
var channel_path = '<?=$this->xdReceiver?>';
var host_url = '<?=$this->hostUrl?>';
var servicePathShort = '<?=$this->servicePathShort?>';
var login = false;
FB_RequireFeatures(["Api"], function(){
// Create an ApiClient object, passing app's API key and
// a site relative URL to xd_receiver.htm
FB.Facebook.init(api_key, channel_path);
var api = FB.Facebook.apiClient;
// If FB user session exists - load stats data
if(api.get_session()!=null){
if(api.get_session().uid!='' && api.get_session().uid!=undefined){
login = true;
alert(api.get_session().uid);
return true;
}
}
login = false;
return false;
});
return false;
}
【问题讨论】:
标签: javascript facebook