Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从facebook API持续轮询数据?_Javascript_Facebook_Facebook Graph Api_Facebook Javascript Sdk_Facebook Graph Api V2.4 - Fatal编程技术网

Javascript 如何从facebook API持续轮询数据?

Javascript 如何从facebook API持续轮询数据?,javascript,facebook,facebook-graph-api,facebook-javascript-sdk,facebook-graph-api-v2.4,Javascript,Facebook,Facebook Graph Api,Facebook Javascript Sdk,Facebook Graph Api V2.4,我正在创建一个简单的网站,使用facebook javascript sdk和facebook API从facebook页面读取消息。我需要不断阅读facebook页面上的信息?。我该怎么做?。如果我像while(true){FB.api()}那样在循环中连续运行它,则网站将挂起!。我需要不断轮询聊天中的消息,然后将其显示在网站上。有什么线索吗?。 这是我正在做的。或者我应该能够连续轮询未读邮件,然后将其显示给用户 FB.api( "/<pageId

我正在创建一个简单的网站,使用facebook javascript sdk和facebook API从facebook页面读取消息。我需要不断阅读facebook页面上的信息?。我该怎么做?。如果我像while(true){FB.api()}那样在循环中连续运行它,则网站将挂起!。我需要不断轮询聊天中的消息,然后将其显示在网站上。有什么线索吗?。 这是我正在做的。或者我应该能够连续轮询未读邮件,然后将其显示给用户

        FB.api(
            "/<pageId>?fields=access_token",
            function (response) {
            if (response && !response.error) {
                console.log(response);
                /* handle the result */
                document.getElementById('status').innerHTML = response.access_token;
                FB.api(
                    "/<pageid>?fields=conversations{message_count,unread_count}",
                    {access_token : response.access_token},
                    function(response2){
                        if(response2 && !response2.error){

                            var conversationId = response2.conversations.data[0].id;
                            var unreadCounter = response2.conversations.data[0].unread_count;
                            if(!unreadCounter){
                                console.log("There are no unread msgs currently":unreadCounter);    

                            }


                            //console.log(conversationId);
                            FB.api(
                             "/"+conversationId+"?fields=snippet",
                             {access_token : response.access_token},
                            function (response) {
                            if (response && !response.error) {
                            /* handle the result */
                            console.log(response);
                            }
                            else{
                                console.log(response);
                            }
                        }   
                    );


                            //handling result
                            console.log(response2);
                            document.getElementById('status').innerHTML = response2.conversations;
                        }
                        else{
                            console.log(response2);
                        }

                    }
                );
            }
            else{
                console.log(response);
            }
        },{scope:"read_page_mailboxes"});   
FB.api(
“/?字段=访问令牌”,
功能(响应){
if(response&&!response.error){
控制台日志(响应);
/*处理结果*/
document.getElementById('status').innerHTML=response.access\u令牌;
FB.api(
“/?字段=对话{消息计数,未读计数}”,
{access\u token:response.access\u token},
功能(响应2){
if(response2&!response2.error){
var conversationId=response2.conversations.data[0].id;
var unreadCounter=response2.conversations.data[0]。未读计数;
如果(!未读计数器){
log(“当前没有未读MSG”:未读计数器);
}
//console.log(会话ID);
FB.api(
“/”+conversationId+“?字段=代码段”,
{access\u token:response.access\u token},
功能(响应){
if(response&&!response.error){
/*处理结果*/
控制台日志(响应);
}
否则{
控制台日志(响应);
}
}   
);
//处理结果
console.log(response2);
document.getElementById('status').innerHTML=response2.conversations;
}
否则{
console.log(response2);
}
}
);
}
否则{
控制台日志(响应);
}
},{范围:“阅读页面邮箱”});

使用Webhooks,这样Facebook会在出现新消息时通知您您是指谷歌的第一次点击?是的,thnks……….使用Webhooks,Facebook会在有新消息时通知你你是说谷歌的第一次点击?是的,thnks。。。。。。。。。。。