首页 > 解决方案 > 网站中的实时流媒体在线编辑器

问题描述

我正在开发一个 IDE 和编译器项目。所以我想将编辑器直播给同一个网站的成员,但我不希望它是像 YouTube Live 这样的视频流。编辑器对其他人应该是只读的

注意:编辑器是网页内置的

标签: javascriptphphtmllive-streamingbroadcasting

解决方案


这就是我解决这个问题的方法,如果我做的不正确或结构不正确,我很乐意根据评论反馈更新任何内容。

要实现像 google docs 这样的近实时更新,您需要某种形式的数据包/数据通信。通常,这涉及某种数据库,或在会话中向用户发送分组数据。我的猜测是,Google 会为您的文档保留一个小缓存,以了解当前正在使用该文档的人。然后它收集页面的数据,检查大小并查看自上次检查以来它是否发生了变化。它会在某人进行编辑后改变大小,并且可能有一种辅助方法可以确保如果您不是进行更改的人,它不会在 1 之后开始无限循环向人们发送更改人输入了 1 个字母。因此,现在页面识别出您已经进行了更改,因此它向浏览器“发送一个包含新文档内容的数据包”。其他没有的人 t 进行该编辑将收到更改,因为他们的客户端(谷歌文档会话)不断检查用于“传输”数据的文档的小型缓存。然后其他客户端会话有一个检查循环,它将每隔一段时间向缓存发送一个 ajax 请求以检查更新。如果它检测到有一个,那么它会提取该数据并适当地更新文档。

为了实现您正在谈论的这种“视频”视图,这相当于某人查看谷歌文档页面并且不允许做任何事情,除了查看它,而其他人(您)在他们的会话中编辑它。

我希望这有助于您了解完成此任务需要做什么。

有用的网址:

  1. 阿贾克斯信息:点我
  2. JavaScript 信息:点我

推荐阅读