Som*_*Guy 6 javascript php comet
假设我正在同步HTML页面上的文本,存储在localStorage中,从计算机A到计算机B.当用户编辑计算机A上的文本时,我向服务器发送请求,并告诉它更改了哪些文本.有什么方法可以让服务器告诉计算机B有新文本,没有计算机B必须继续检查?我读过有关Comet的内容,但我正在尝试不使用任何库.有办法吗?另外,如果你要推荐Comet,你能举一个使用普通JavaScript和Comet的简单例子吗?
我有个主意,但我不知道它是否有效.在计算机B上,我发送一次请求,让服务器的文件继续延迟响应,直到有一些新文本.这样,它就像长轮询,但请求最终会超时.如果有一种方法可以将超时设置为永远,那么这将变得更加容易.那么,任何人都有任何想法?
PS-我想只使用JavaScript和PHP,并尝试避免使用库.尽管如此,如果您知道可以使用JS和PHP执行此操作的库,请告诉我.
此外,我知道有这样的问题,但我发现那里的答案并不令人满意.
哦,如果有人知道这里的聊天是如何工作的,你能告诉我吗?
tl; dr:我想从服务器向HTML页面发送请求,或者让HTML发送一个请求,该请求保持活动状态直到创建适当的响应.
Comet 是长轮询的实现。
问题是主机需要保持所有资源可用于所有打开的请求。必须仔细配置服务器,以使其在负载下顺利工作。这不是一个“开箱即用”的解决方案。
另一个缺点是每个用户必须绑定到特定的服务器 - 因此没有简单的方法来负载平衡请求。
坚持定期轮询通常是最好的选择。