实现ajax以实现功能正常的实时聊天



我正在尝试为我的网站建立一个简单的实时聊天,我已经设置好了所有内容,包括数据库、登录和注销系统、表单、在聊天表单中显示数据库值。

我唯一缺少的是实现实时刷新功能,这样用户就不必手动刷新网站才能看到新消息。我有点迷路了,你能给我一些指导吗?我猜每当发送消息时,我都必须添加一个特定的javascript调用,或者;发送";按下按钮更具体,然后会调用一个功能来刷新每个参与者的聊天。不确定从哪里开始或使用哪种代码。

从本质上讲,有两种方法可以实现这一点。

  1. 在ajax请求中使用轮询技术,这将赋予您更大的兼容性,但您需要做更多的工作才能实现它。我真的不认为它适用于现在的大多数情况,因为它可能效率很低。

  2. 使用套接字机制,您可以使用web套接字作为开箱即用的解决方案,现在大多数浏览器都支持它。对于第三方库,您可以用socket.io,它可以回退到web套接字,但它允许一些开箱即用功能,如频道,您将从中受益。最后,对于第三方服务,您可以使用firebase/firestore,他们有一个实时数据库,因此每当发生更改时,您都会收到通知。

我建议使用web套接字方法(本机(或使用像socket.io这样的包装器/库。如果你使用socket.io,有很多教程可以使用该库构建聊天,所以你可以很快获得一个工作示例。

最新更新