0

我已经建立了一个社区。在 Login.php 我通过连接和收听

var socket = io.connect("http://ajkfh.com:8080");
socket.on("connect", function() { ......

但是,如果用户在社区的另一个站点上进行了更改,他的连接将被关闭并且他不再听。

我怎样才能打开社区底层站点的连接。谢谢,对不起我的英语不好

4

2 回答 2

0

只有当用户留在页面上时,套接字连接才可用。您无法在页面加载时使套接字连接可用。您可以做的是将页面加载模拟到 ajax 请求中,该请求将内容加载到容器中。
或者您可以在页面加载时重新建立连接,并有一种机制来跟踪客户端(将客户端 ID 存储在 cookie 或其他东西上)

于 2013-10-22T08:32:58.427 回答
0

似乎您使用的是socket.io,即websocket。如果页面刷新或关闭,websocket 连接确实会丢失。

如果你想在页面之间保留一些东西,使用 Cookie 或 Session,就像普通的 http 方式一样。在浏览器端,您可以读取数据(例如通过 document.cookie 或一些库)并通过 websocket 发送回服务器。

于 2013-10-22T08:34:28.240 回答