【发布时间】:2013-05-02 07:21:14
【问题描述】:
我正在使用 Android Autobahn 客户端与 Web 套接字服务器进行通信。我需要知道客户端如何检测 tcp 连接丢失。它会发送 TCP 心脏探测来检测吗?
PS:错误代码:de.tavendo.autobahn.WebSocket.ConnectionHandler.CLOSE_CONNECTION_LOST
【问题讨论】:
标签: android websocket autobahn
我正在使用 Android Autobahn 客户端与 Web 套接字服务器进行通信。我需要知道客户端如何检测 tcp 连接丢失。它会发送 TCP 心脏探测来检测吗?
PS:错误代码:de.tavendo.autobahn.WebSocket.ConnectionHandler.CLOSE_CONNECTION_LOST
【问题讨论】:
标签: android websocket autobahn
根据源码可知,端点调用close时出现异常关闭码,会产生CLOSE_CONNECTION_LOST错误码:
final int tavendoCloseCode = (close.mCode == 1000) ? ConnectionHandler.CLOSE_NORMAL : ConnectionHandler.CLOSE_CONNECTION_LOST;
我不确切知道您的路由器是如何实现的,但是在源代码中,您还有一个 Ping / Pong 实现。
所以你可以期望通过发送一些 Ping / Pong WebSocket 来检测连接丢失。
【讨论】: