Facebook使用GraphAPI评论插件

nic*_*elo 5 javascript ajax facebook facebook-graph-api

我一直在寻找答案,但我发现很难在文档中找到关于这个问题的确定结果(完全有可能我错过了一些东西).

背景

我正在使用插件在我的网站上显示评论,我正在尝试添加"实时"功能.我知道Facebook没有像他们在网站上那样通过"默认"为插件提供自动刷新功能,所以我通过setInterval()函数中的ajax请求来模拟它.

有没有办法实现一个长ajax pull,push或另一个(更好?)解决方案来获取注释信息?,多个ajax请求解决方案工作正常,但它有点消耗.

非常感谢!

fre*_*oma 1

一般来说,你可以通过使用WebSockets来实现你想要的,但是我不认为 Facebook 的 API 支持基于 WebSockets 的机制,因此可能没有不包含某种轮询的解决方案。但是,您可以将该轮询机制从用户的浏览器移至您的服务器,这可能会带来更好的用户体验,并减少您必须对 Facebook API 进行的 API 调用数量(以防有速率限制)。

更具体地说,我建议采用一种机制,您可以将 Facebook API 中的数据轮询到数据库中,然后设置一个 WebSockets 解决方案,例如Socket.IO,它使用 WebSockets 事件驱动(即,很多)来传递从 Facebook API 轮询的数据。比轮询更快)机制(如果用户的浏览器不支持 WebSockets,Socket.IO 会回退到 AJAX 轮询)。