5

How may I refresh current client view page from the server side? for example, if I want to force refresh for page that is viewing now for all the clients, so they can view the new content. and I want to do this refresh in the time that I want using PHP.

Is it possible??

4

3 回答 3

7

您可以通过两种方式获得该行为:

WebSockets - 如果您的所有客户端都通过 Web 套接字连接,则您在客户端和服务器之间建立了直接连接。您需要在时间方面发挥创意,但您当然可以随时发送需要刷新的命令。这要求您在 PHP http://socketo.me/和 JavaScript 中实现 Web 套接字。

轮询 - 您可以将客户端设置为每 x 秒发送一次 AJAX 请求。服务器以 bool 值进行响应,AJAX 成功处理程序使用该值来确定是否应该刷新页面。

于 2013-04-26T18:58:06.090 回答
3

使用网络套接字。您可以将 PHP 套接字与thisthis一起使用

我认为 php Sockets 需要您拥有 5.3 或更高版本的 PHP 版本。

如果您没有 PHP v5.3 或更高版本,您可以使用带有Socket.io的Node JS

长池也是一种选择,但考虑到您的服务器将获得的请求数量,这不是一个好的解决方案。此外,用户的带宽使用率也会很高。

于 2013-04-26T19:10:46.327 回答
1

如果您想以特定间隔刷新页面,请将其包含在您的<head>:

<meta http-equiv="refresh" content="5">

将“5”更改为您喜欢的任何秒数。

如果您只想在事情发生变化时刷新,您需要在客户端上使用一些 Javascript - 例如,向 URL 发出 Ajax 请求,询问自页面加载以来是否有新数据,并在必要时刷新。

于 2013-04-26T18:53:45.087 回答