播放框架:WebSocket 连接超时

Play framework: WebSocket connection timeout

我有一个通过 WebSocket 连接到服务器(用 Scala 和 Play 编写)的设备。 当我关闭设备时,连接保持打开状态。有没有办法在 Play 框架中设置 WebSocket 连接保持活动超时以检查客户端端点是否关闭。谢谢。

不久前遇到过这个问题。我们确定的解决方案是实施心跳(乒乓)策略。

因此,例如,每 5 秒发送一条 ping 消息并等待 pong 回复,如果没有消息,则终止与订阅者的连接(在我们的用例中是一个 Actor)收到。