我正在AS3中编写一个Flash应用程序。我正在使用com.facebook.graph库来从我的应用程序登录工作。
如果用户未登录Facebook,则会出现一个弹出窗口,要求他们输入用户名和密码。但问题是它似乎没有返回回调函数。
用于连接的JS代码如下所示:
function redirect() {
var params = window.location.toString().slice(window.location.toString().indexOf('?'));
top.location = 'https://graph.facebook.com/oauth/authorize?client_id=myappID&scope=publish_stream&redirect_uri=http://mydomain.com.au/play.php?'+params;
}
,AS代码如下所示:
Facebook.init('myappID', handleLogin);
function onLoginButtonClicked(event:MouseEvent):void
{
if (Facebook.getSession()==null ||
Facebook.getSession().uid == null)
{
Facebook.login(handleLogin);
}
else{
handleLogin();
}
}
function handleLogin(response:Object, fail:Object):void
{
if (response == null)
{
ExternalInterface.call('redirect');
return;
}
postToFB();
}
function handleUploadComplete(response:Object, fail:Object):void {
//call back from posting
}
function postToFB() {
messageText.text = 'done';
}
如果用户已经登录,则它会正确运行posttoFB函数,但是,如果它们没有并且它通过登录过程,则它不会运行该函数。它似乎只是在完成登录过程后才运行回调函数。
我在这里缺少什么?
答案 0 :(得分:0)