腾讯视频NBA比赛得分和时间实时刷新原理?

问题如下:

图片描述

如上图所示,地址,里面的时间和得分都会过一段时间(一般是几秒-十几秒)会自动刷新一次,这个刷新的背后是websocket的实时推送吗?还是ajax的定时请求刷新?又或者是其他技术呢?

我查看页面的源代码,发现腾讯做了特殊的处理,基本没有什么信息,什么websocket和ajax相关的信息都没有,求解?

阅读 3.8k
1 个回答

fetchScheduleListInterval
一个定时器

fetchScheduleListInterval: function() {
var t = this;
    return p.iInterval(function() {
        var e = c()({}, t.dateRange);
        t.$store.dispatch("fetchScheduleList", e).then(function(e) {
            e && (t.$store.dispatch("setLoadingStatus", !1),
            t.noGames = 0 === a()(t.scheduleList).length)
        })
    }, 1e4)
}

其中还有一个判断,当日比赛结束则停止定时器。

this.fetchScheduleListInterval.stop():this.fetchScheduleListInterval.start()

js文件在这
调用栈里也能看出来
图片描述

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题