响应未定义/到达太晚 - Facebook API FB.api

时间:2015-08-14 19:58:48

标签: javascript facebook response

function getEvents(){
FB.api("/282281666473/events", function(response){
eventsList(response);
}

function eventsList(response) {
    var arr= response;
    for(var j=0;j<arr.length;j++) {
        if(!arr[i]){
            dateCheck(arr[i],i);
        }
    }
}

我配置了域名和所有内容,它可以正常运行。 问题出在var arr= response.data

由于响应未定义,因此存在错误。 我已经成功地达到了响应得到正确值的情况,但是这样做太迟了!只有在我到达此行之后,突然调试器跳转到行FB.api("/282281666473/events", function(response){并为响应提供其值。但同样,为时已晚,因为发送给第二个函数的响应未定义。

我该怎么办?为什么有些时候它是未定义的,当它未定义时,它更新得太晚了? 我可以在第FB.api("/282281666473/events", function(response){行等待,直到回复到来为止?

(我有一个登录按钮,在此通话之前我已登录到facebook,因此我将有一个令牌进入公共页面并获取事件。)

1 个答案:

答案 0 :(得分:1)

我唯一能看到的是你缺少一个花括号和括号:

function getEvents() {
    FB.api("/282281666473/events", function (response) {
        eventsList(response);
    }); //Missing parenthesis.
} //Missing curly bracers.

根据其他内容,它是一个回调函数,应该按预期工作,除非fb api调用失败,请检查控制台是否有错误响应。