【发布时间】:2011-11-05 21:39:26
【问题描述】:
我正在开发一个应用程序,其中客户端通过 Socket.io 连接到 nodejs 服务器并订阅各种事件。这些订阅相当复杂,无法使用 Socket.IO 的频道功能处理。
这意味着客户端需要跟踪其订阅,并且在断开连接时可能必须重新订阅。不幸的是,我不太确定 Socket.IO 是如何处理重新连接的,以及这对客户端来说到底有多透明。
那么问题来了:如何模拟连接失败并强制 Socket.IO 重新连接?
【问题讨论】:
-
拔下网线重新插上?
-
或者可能只是删除任何一方的连接而不关闭它,然后看看另一方的反应。
-
@xavierm02:这可行,但确实不是您想在单元测试中使用的那种方法 :-) 我如何“删除”连接?
-
你应该有某种 API 来创建一个对象。并且该对象必须以某种方式具有 close 方法。 Truc 在不使用该 close 方法的情况下删除对象,也许您会遇到错误。如果一方面有错误,那么另一方面会得到你需要的错误。
-
不,我没有关闭方法,因为连接不打算关闭。即使我这样做了,我也需要在 Socket.IO 级别上进行模拟,因为我希望 Socket.IO 自动重新连接。
标签: javascript socket.io