Javascript 如何使用新消息更新聊天窗口
有没有更好的方法用新消息更新聊天记录?这是使用setInterval更新聊天的正确方法吗?很好,只是一个小小的调整,而不是将AJAX调用封装在一个时间间隔内(如果服务器出现问题,这可能会导致未返回的请求池),您应该将Javascript 如何使用新消息更新聊天窗口,javascript,Javascript,有没有更好的方法用新消息更新聊天记录?这是使用setInterval更新聊天的正确方法吗?很好,只是一个小小的调整,而不是将AJAX调用封装在一个时间间隔内(如果服务器出现问题,这可能会导致未返回的请求池),您应该将setTimeout抛出到AJAX回调中以创建递归调用。考虑: setInterval(function{ //send ajax request and update chat window }, 1000) 是的,一个小小的调整,而不是将AJAX调用封装在一个时间间隔内
setTimeout
抛出到AJAX回调中以创建递归调用。考虑:
setInterval(function{
//send ajax request and update chat window
}, 1000)
是的,一个小小的调整,而不是将AJAX调用封装在一个时间间隔内(如果服务器出现问题,这可能会导致未返回的请求池),您应该向AJAX回调抛出
setTimeout
,以创建递归调用。考虑:
setInterval(function{
//send ajax request and update chat window
}, 1000)
有两种主要的选择(或更流行的方式) 拉动 首先是拉,这就是你正在做的。每x(毫秒)秒检查一次服务器配置是否已更改 这是html4方式(不包括flash等,因此仅限于html/js)。对于php来说,这不是最好的方法,因为对于sinle用户来说,每分钟有很多连接(在示例代码中,每秒至少有60个连接) 还建议在响应之前等待,然后等待。例如,如果您每1秒请求一次更新,但您的响应需要2秒,那么您就是在敲打服务器。看 推送 其次是推动。这更像是HTML5的方式。这是由WebSocket实现的。所发生的是,客户端正在“列出”连接并等待更新。当它被更新时,它将触发一个事件 在PHP中实现这一点并不好,因为您需要一个恒定的连接,并且您的服务器很快就会溢出,因为PHP无法将连接推送到后台(如果我没有记错的话,Java也可以)
我亲自制作了一个小型聊天应用程序并使用了它。它工作得很好。我只使用了免费版本,所以不知道它有多贵。有两种主要的选择(或者更流行的方式) 拉动 首先是拉,这就是你正在做的。每x(毫秒)秒检查一次服务器配置是否已更改 这是html4方式(不包括flash等,因此仅限于html/js)。对于php来说,这不是最好的方法,因为对于sinle用户来说,每分钟有很多连接(在示例代码中,每秒至少有60个连接) 还建议在响应之前等待,然后等待。例如,如果您每1秒请求一次更新,但您的响应需要2秒,那么您就是在敲打服务器。看 推送 其次是推动。这更像是HTML5的方式。这是由WebSocket实现的。所发生的是,客户端正在“列出”连接并等待更新。当它被更新时,它将触发一个事件 在PHP中实现这一点并不好,因为您需要一个恒定的连接,并且您的服务器很快就会溢出,因为PHP无法将连接推送到后台(如果我没有记错的话,Java也可以)
我亲自制作了一个小型聊天应用程序并使用了它。它工作得很好。我只使用了免费版本,所以不知道它有多贵。您也可以查看WebSocket,但除此之外,是的,定期的ajax请求是更新聊天的最佳方式。您也可以查看WebSocket,但除此之外,是的,定期的ajax请求是更新聊天的最佳方式。也许对你也有用。