C++ Poco C++;Websocket服务器-防止它在60秒后关闭
我尝试使用POCO C++ ++的WebSoC类类来构建一个干净的接口到我的服务器应用程序。 我的问题是,使用示例WebSocket服务器应用程序,套接字在60秒后关闭到客户端-我需要它持续更长的时间(想想+15分钟…) 我已经尝试将HTTP层的超时设置为10分钟(3600秒),这对行为没有影响C++ Poco C++;Websocket服务器-防止它在60秒后关闭,c++,websocket,poco-libraries,C++,Websocket,Poco Libraries,我尝试使用POCO C++ ++的WebSoC类类来构建一个干净的接口到我的服务器应用程序。 我的问题是,使用示例WebSocket服务器应用程序,套接字在60秒后关闭到客户端-我需要它持续更长的时间(想想+15分钟…) 我已经尝试将HTTP层的超时设置为10分钟(3600秒),这对行为没有影响 不幸的是,Poco示例和文档有点单薄,所以我希望这里的人能够提供帮助。可以使用 ws.setReceiveTimeout(Poco::Timespan(天、小时、分钟、秒、微秒)) 超时可能是由于线程(
不幸的是,Poco示例和文档有点单薄,所以我希望这里的人能够提供帮助。可以使用
ws.setReceiveTimeout(Poco::Timespan(天、小时、分钟、秒、微秒))代码>
超时可能是由于线程(池)而不是WebSocket本身造成的。您可能希望通过其构造函数设置不同的空闲时间。请参见连接关闭的原因是在中的堆栈上创建了WebSocket。每个请求都会调用处理程序,并且处理时间很短。为了让它持续更长时间,您应该在堆上创建它,并在工厂中保留对它的引用(或其他一些长期存在的对象),以便在处理HTTP请求后它保持活动状态。是否有任何Ping函数发送到客户端?WebSockets协议本身有乒乓和乒乓操作码。在一些不活动之后,库可能会断开客户端的连接。我确实认为可能是这种情况——在这种情况下,我需要找到一种方法来防止这种行为。我计划将WebSocket用于移动客户端,我希望将通信量限制在最低限度,以节省电池寿命。同时检查Poco中WebSocket的函数setKeepAlive。问题:您是使用浏览器连接到服务器,还是使用Poco客户端WebSocket连接到另一个Poco应用程序?根据文档,乒乓球必须由应用程序开发人员处理。因此,它不是由库it本身处理的。我还将查看setKeepAlive。ws.setReceiveTimeout(Poco::Timespan())代码>将其设置为无穷大