Actionscript 3 FacebookMobile.init()偶尔(和反复)出现问题

Actionscript 3 FacebookMobile.init()偶尔(和反复)出现问题,actionscript-3,facebook-graph-api,air,facebook-as3-api,Actionscript 3,Facebook Graph Api,Air,Facebook As3 Api,似乎此API已损坏和/或被放弃,因为在某些情况下,此API调用总是在几个小时内失败。今天再次发生,但比以前花费了更多的时间 我不知道该怎么办。我有两个Air应用程序,它们今天不工作。 有什么解决办法吗 下面是一段简单的代码: FacebookMobile.init(APP_ID, onInit); private function onInit(fbSession:Object, fail:Object):void { if (fbSession){ trace(fb

似乎此API已损坏和/或被放弃,因为在某些情况下,此API调用总是在几个小时内失败。今天再次发生,但比以前花费了更多的时间

我不知道该怎么办。我有两个Air应用程序,它们今天不工作。 有什么解决办法吗

下面是一段简单的代码:

FacebookMobile.init(APP_ID, onInit);

private function onInit(fbSession:Object, fail:Object):void 
{
    if (fbSession){
        trace(fbSession.accessToken);
    }
    else{
        traceV2(fail); // it's a "deep" trace
        // other API methods related to login
    }
}
在FacebookMobile.init()中,我们需要一个会话对象(包含FB访问令牌)或一个“失败”对象。
失败对象正在将其返回给我:

[Object]
|   [error:Object]
    | code = 190 
    | message = Malformed access token AAAEWSUA8XjUBAJo4JuO5hUMwSnKC95LNRr1nHHIU8rwPGzxvHIuhUcDziZA9ZC3xDf4ZBwYcqjVU1ir5wf5jlEsJ5zwyMhnnWGyWxXeKQZDZD,AAAEWSUA8XjUBAJo4JuO5hUMwSnKC95LNRr1nHHIU8rwPGzxvHIuhUcDziZA9ZC3xDf4ZBwYcqjVU1ir5wf5jlEsJ5zwyMhnnWGyWxXeKQZDZD 
    | type = OAuthException
提前谢谢


问题已修复。 此特定问题的解决方案位于com.facebook.graph.FacebookMobile:560的handleLogin()函数中

    protected function handleLogin(result:Object, fail:Object):void {
        loginWindow.loginCallback = null;

        if (fail) {
            loginCallback(null, fail);
            return;
        }

        // ---------------||--------------------//
        // ---------------\/--------------------//
        // This line below solves this problem
        result.access_token = String(result.access_token).split(',')[0];
        // ---------------/\-------------------//
        // ---------------||-------------------//


        session = new FacebookSession();
        session.accessToken = result.access_token;
        session.expireDate = (result.expires_in == 0) ? null : FacebookDataUtils.stringToDate(result.expires_in) ;

        if (_manageSession) {
            var so:SharedObject = SharedObject.getLocal(SO_NAME);
            so.data.accessToken = session.accessToken;
            so.data.expireDate = session.expireDate;
            so.flush();
        }

        verifyAccessToken();
    }

Facebook将访问令牌作为数组返回,这似乎是一个错误:

我将尝试编辑通过删除第二个访问令牌值返回的字符串。(逗号后的所有内容)并将其签名到本地会话访问令牌变量。它可能会解决这个问题