2010-12-27 4 views
0

Я пишу flash-приложение в AS3. Я использую библиотеку com.facebook.graph, чтобы получить доступ из моего приложения для работы.Получение ответа от пользователя facebook

Если пользователь не подписан в 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 правильно, однако, если они отсутствуют, и он проходит процедуру входа в систему, она не запускает эту функцию. Кажется, что просто не выполняйте функцию обратного вызова после завершения процесса ввода.

Что мне здесь не хватает?

ответ

Смежные вопросы