Facebook如何立即初始化最近的新闻提要条目



我正在为我的网络项目开发一个新闻提要模块。新闻提要活动(帖子、过滤器等)与Facebook几乎相似。我使用了分页模式,当用户向下滚动页面(无限滚动)时,该模式逐页初始化新闻(例如:每次滚动 20 个帖子)。

我想知道当你的一个朋友分享帖子时,Facebook是如何初始化当前新闻的。我想它使用一个触发器来发送 ajax 请求以获取是否存在新帖子。使用计时器触发器(带有每 10 秒发送一次 ajax 请求的 javascript 超时函数)不是解决此问题的有效解决方案。

有人对我有任何其他触发建议吗?

提前谢谢。

如果要监视主页的网络活动,则会看到对https://pct.channel.facebook.com/pull的调用,并附加了一些唯一参数。在观看它时,您会看到调用需要可变的时间长度,从 1 秒到 ~60 秒不等。

这称为长轮询,其中服务器等待新信息可用后再发回响应。同时,HTTP 调用处于悬念状态,就好像端点正在加载一样。一旦服务器找到可用信息,它就会发送包含数据的响应,并关闭连接。然后,客户端在收到数据后重新打开与另一个 HTTP 调用的连接。

最新更新