javascript - 使用 WebSocket 维护连接

标签 javascript c# websocket

我有一个 JavaScript/html Web 套接字客户端。它经常从我的服务器接收图像。我在 C# 控制台应用程序中托管我的 Web 套接字服务器。

我的客户等待图像的最长时间是 10 秒。

我是否还应该从客户端 (JavaScript) 向我的服务器发送“保持事件”数据包,或者它从我的服务器接收常规数据包就足够了?

谢谢

最佳答案

您可以从服务器发送 ping 消息,客户端将用 pong 消息进行应答。它是 WebSocket 协议(protocol)的一部分,不确定您的服务器实现是否支持它。然而,从客户端你无法知道你是否在一段时间内收到了 ping 消息,因此客户端可能会卡在那里。

或者您可以使用自己的消息在应用程序级别执行此操作。基本上在 JSON 中创建一条“ping”消息并定期从客户端发送到服务器,然后如果在 X 时间内没有收到响应,请重新连接。

如果不这样做,唯一的问题是连接可能 half-open ,而您的客户可能会在那里等待永远不会出现的图像。

干杯。

关于javascript - 使用 WebSocket 维护连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31605921/

相关文章:

javascript - 在带有自屏幕的 window.open 中传递变量

Nginx 反向代理 WebSocket 超时

javascript - 通过ajax对Mysql表进行排序

javascript - Angular:在外部单击隐藏后不会再次显示预先输入的建议

c# - SQL Server CE 中的正确日期时间格式?

c# - Empty IQueryable 在 Empty 时返回什么?

ssl - 如何在一个 TLS 连接中封装 OpenVPN 和 HTTPS 流量?

python - 如何在 python 中将字符串转换为 ip 地址

javascript - 如何将 chrome tts 输出保存到客户端或服务器(仅限浏览器)

c# - 等于与另一个可空类型上的可空类型进行比较