0

我使用 Wamp WS 在 python 中创建了一个 WebSocket 服务器。我正在使用以下代码将包含 WampSharp 客户端的 DotNet 应用程序与上述 WebSocket 服务器连接起来:

DefaultWampChannelFactory channelFactory = new DefaultWampChannelFactory();
channel = channelFactory.CreateChannel(serverAddress);
channel.Open();

现在我需要从客户端 ping 我的服务器。当我查看用 Python 创建的 Wamp WS 客户端时,它由 sendPing(self,payload) 函数组成,该函数将按如下方式 ping 服务器:

WampClientProtocol.sendPing(self, payload)

在服务器端有一个 onPing 函数来处理发送的 ping,如下所示:

def onPing(self, payload): print "收到 ping 消息成功"

因此,我想知道是否有任何方法可以从我的 WampSharp 客户端 ping 服务器?

WebSocket 服务器开始于:127.0.0.1:8000

提前致谢

4

1 回答 1

2

目前没有支持的方法来执行此操作。

请注意,WampSharp 包装了 WebSocket4Net 的 WebSocket 类,默认情况下,它每 60 秒自动发送一条 ping 消息。

我无法从 WebSocket 类中找到对 WebSocket4Net 中手动 ping 发送的任何支持,但它可能存在但我错过了。

如果需要,您可以找到支持手动 ping 发送的不同 WebSocket 客户端库,并实现包装它的 IControlledWampConnection(请参阅WebSocket4NetConnection),并使用指定要使用的 IControlledWampConnection 的 DefaultWampChannelFactory 重载(请参阅WebSocket4Net 扩展方法)。

于 2014-08-12T22:55:16.830 回答